an app to share curated trails
at main 2.6 kB view raw
1{ 2 "name": "sidetrail", 3 "version": "0.1.0", 4 "private": true, 5 "workspaces": [ 6 "db", 7 "ingester", 8 "realtime" 9 ], 10 "scripts": { 11 "dev": "next dev --turbopack", 12 "dev:ingester": "npm run -w sidetrail-ingester dev", 13 "dev:realtime": "npm run -w sidetrail-realtime dev", 14 "build": "rm -rf .next/cache/* && next build --webpack", 15 "start": "next start", 16 "lint": "eslint --ext .js,.jsx,.ts,.tsx .", 17 "typecheck": "tsc --noEmit", 18 "check": "npm run lint && npm run typecheck", 19 "format": "prettier --write .", 20 "format:check": "prettier --check .", 21 "prepare": "husky", 22 "postinstall": "patch-package && npm run lex:build", 23 "lex:build": "lex build --lexicons ./lexicons --out ./lib/lexicons --clear --importExt \"\"", 24 "db:push": "drizzle-kit push", 25 "db:studio": "drizzle-kit studio", 26 "test": "npx vitest run", 27 "test:watch": "npx vitest", 28 "deploy:app": "railway link --service sidetrail && railway up", 29 "deploy:ingester": "railway link --service ingester && railway up", 30 "deploy:realtime": "railway link --service realtime && railway up", 31 "deploy:all": "npm run deploy:app & npm run deploy:ingester & npm run deploy:realtime & wait" 32 }, 33 "dependencies": { 34 "@atproto/api": "^0.17.4", 35 "@atproto/identity": "^0.4.9", 36 "@atproto/lex": "^0.0.4", 37 "@atproto/oauth-client-node": "^0.3.11", 38 "@atproto/syntax": "^0.4.2", 39 "@opentelemetry/api": "^1.9.0", 40 "@opentelemetry/instrumentation-pg": "^0.61.1", 41 "@radix-ui/react-dialog": "^1.1.15", 42 "@radix-ui/react-dropdown-menu": "^2.1.16", 43 "@types/pg": "^8.15.6", 44 "@types/ws": "^8.18.1", 45 "@vercel/otel": "^2.1.0", 46 "drizzle-orm": "^0.44.7", 47 "eslint-plugin-react-hooks": "^7.0.1", 48 "hls.js": "^1.6.13", 49 "ioredis": "^5.8.2", 50 "iron-session": "^8.0.4", 51 "lru-cache": "^11.2.4", 52 "next": "16.1.0-canary.12", 53 "pg": "^8.16.3", 54 "react": "^19", 55 "react-dom": "^19", 56 "ws": "^8.18.3" 57 }, 58 "devDependencies": { 59 "@eslint/js": "^9.39.1", 60 "@types/node": "^22.14.1", 61 "@types/react": "^19.2.7", 62 "@types/react-dom": "^19.2.3", 63 "@vitest/ui": "^4.0.1", 64 "drizzle-kit": "^0.31.7", 65 "eslint": "^9.39.1", 66 "husky": "^9.1.7", 67 "lint-staged": "^16.2.6", 68 "patch-package": "^8.0.0", 69 "prettier": "^3.6.2", 70 "server-only": "^0.0.1", 71 "typescript": "^5.9.3", 72 "typescript-eslint": "^8.46.4", 73 "vitest": "^4.0.1" 74 }, 75 "overrides": { 76 "next": "16.1.0-canary.12" 77 }, 78 "engines": { 79 "node": ">=22.16.0" 80 }, 81 "lint-staged": { 82 "*": "prettier --write --ignore-unknown" 83 } 84}