{ "name": "ticketing-server", "version": "1.0.0", "scripts": { "dev": "tsx watch src/index.ts", "build": "tsc", "start": "node dist/server/src/index.js", "start:prod": "prisma db push && prisma db execute --file prisma/post-push.sql --schema prisma/schema.prisma && node dist/server/src/index.js", "db:push": "prisma db push && prisma db execute --file prisma/post-push.sql --schema prisma/schema.prisma", "db:generate": "prisma generate", "db:seed": "tsx prisma/seed.ts", "typecheck": "tsc --noEmit", "test": "vitest run", "test:watch": "vitest" }, "dependencies": { "@prisma/client": "^5.22.0", "bcryptjs": "^2.4.3", "cors": "^2.8.5", "dotenv": "^16.4.7", "express": "^4.21.2", "express-async-errors": "^3.1.0", "jsonwebtoken": "^9.0.2", "multer": "^2.1.1", "node-cron": "^3.0.3", "nodemailer": "^8.0.5", "pino": "^9.5.0", "pino-http": "^10.3.0", "pino-pretty": "^13.0.0", "zod": "^3.23.8" }, "devDependencies": { "@types/bcryptjs": "^2.4.6", "@types/cors": "^2.8.17", "@types/express": "^4.17.21", "@types/jsonwebtoken": "^9.0.7", "@types/multer": "^2.1.0", "@types/node": "^22.10.0", "@types/node-cron": "^3.0.11", "@types/nodemailer": "^8.0.0", "@types/supertest": "^6.0.2", "prisma": "^5.22.0", "supertest": "^7.0.0", "tsx": "^4.19.2", "typescript": "^5.7.2", "vitest": "^2.1.8", "vitest-mock-extended": "^2.0.0" } }