{ "name": "api-server", "version": "0.1.0", "private": true, "scripts": { "dev": "tsx watch src/main.ts", "build": "tsc", "start": "node dist/main.js", "lint": "eslint src --ext .ts --fix", "typecheck": "tsc --noEmit", "migrate": "drizzle-kit push", "seed": "tsx src/db/seed.ts" }, "dependencies": { "@aws-sdk/client-s3": "^3.490.0", "@aws-sdk/s3-request-presigner": "^3.490.0", "@nestjs/common": "^10.3.0", "@nestjs/config": "^4.0.3", "@nestjs/core": "^10.3.0", "@nestjs/jwt": "^10.2.0", "@nestjs/passport": "^10.0.3", "@nestjs/platform-express": "^10.3.0", "@nestjs/platform-socket.io": "^10.3.0", "@nestjs/websockets": "^10.3.0", "@shared/types": "workspace:*", "bcrypt": "^5.1.1", "bullmq": "^5.1.0", "class-transformer": "^0.5.1", "class-validator": "^0.14.1", "drizzle-orm": "^0.29.3", "ioredis": "^5.3.2", "nanoid": "^5.0.4", "passport": "^0.7.0", "passport-google-oauth20": "^2.0.0", "passport-jwt": "^4.0.1", "postgres": "^3.4.3", "socket.io": "^4.6.1", "zod": "^3.22.4" }, "devDependencies": { "@types/node": "^20.11.0", "@types/passport-jwt": "^4.0.1", "@types/passport-google-oauth20": "^2.0.14", "@types/bcrypt": "^5.0.2", "typescript": "^5.3.3", "tsx": "^4.7.0", "drizzle-kit": "^0.20.13", "eslint": "^8.56.0", "prettier": "^3.2.0" } }