{ "name": "studioflow-backend", "version": "1.0.0", "description": "StudioFlow API & Worker", "private": true, "scripts": { "build": "nest build", "start": "node dist/main.js", "start:dev": "nest start --watch", "start:debug": "nest start --debug --watch", "start:worker": "nest start --entryFile worker --watch", "start:worker:prod": "node dist/worker.js", "lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix", "test": "jest", "test:watch": "jest --watch", "test:cov": "jest --coverage", "make-admin": "ts-node -e \"\" prisma/make-admin.ts" }, "dependencies": { "@nestjs/common": "^11.0.0", "@nestjs/core": "^11.0.0", "@nestjs/platform-express": "^11.0.0", "@nestjs/config": "^4.0.0", "@nestjs/jwt": "^11.0.0", "@nestjs/passport": "^11.0.0", "@nestjs/swagger": "^11.0.0", "@nestjs/bullmq": "^11.0.0", "bullmq": "^5.4.2", "ioredis": "^5.3.2", "@prisma/client": "^6.0.0", "passport": "^0.7.0", "passport-google-oauth20": "^2.0.0", "passport-jwt": "^4.0.1", "class-validator": "^0.14.1", "class-transformer": "^0.5.1", "zod": "^3.22.4", "csv-parse": "^5.5.5", "csv-stringify": "^6.4.6", "multer": "^2.1.1", "googleapis": "^171.0.0", "reflect-metadata": "^0.2.1", "rxjs": "^7.8.1", "swagger-ui-express": "^5.0.0", "cookie-parser": "^1.4.6" }, "devDependencies": { "@nestjs/cli": "^11.0.0", "@nestjs/schematics": "^11.0.0", "@nestjs/testing": "^11.0.0", "@types/express": "^5.0.0", "@types/multer": "^1.4.11", "@types/node": "^22.0.0", "@types/passport-google-oauth20": "^2.0.14", "@types/passport-jwt": "^4.0.1", "@types/cookie-parser": "^1.4.7", "prisma": "^6.0.0", "ts-jest": "^29.1.2", "ts-loader": "^9.5.1", "ts-node": "^10.9.2", "tsconfig-paths": "^4.2.0", "typescript": "^5.3.3" }, "jest": { "moduleFileExtensions": ["js", "json", "ts"], "rootDir": "src", "testRegex": ".*\\.spec\\.ts$", "transform": { "^.+\\.(t|j)s$": "ts-jest" }, "collectCoverageFrom": ["**/*.(t|j)s"], "coverageDirectory": "../coverage", "testEnvironment": "node" } }