{ "name": "@goodgo/service-template", "version": "1.0.0", "type": "module", "description": "Template for creating new microservices", "main": "./dist/main.js", "scripts": { "dev": "tsx watch src/main.ts", "build": "tsc", "start": "node dist/main.js", "test": "jest", "test:unit": "jest --testPathPattern='src/modules/.*\\.test\\.ts$'", "test:e2e": "jest --testPathPattern='src/__tests__/.*\\.e2e\\.ts$'", "test:watch": "jest --watch", "test:coverage": "jest --coverage", "lint": "eslint src --ext .ts", "typecheck": "tsc --noEmit", "prisma:generate": "prisma generate", "prisma:migrate": "prisma migrate dev", "prisma:deploy": "prisma migrate deploy", "prisma:seed": "tsx prisma/seed.ts", "clean": "rm -rf dist" }, "dependencies": { "@goodgo/auth-sdk": "workspace:*", "@goodgo/logger": "workspace:*", "@goodgo/tracing": "workspace:*", "@goodgo/types": "workspace:*", "@neondatabase/serverless": "^1.0.2", "@prisma/adapter-neon": "^7.2.0", "@prisma/client": "^7.2.0", "cors": "^2.8.5", "dotenv": "^17.2.3", "express": "^5.2.1", "express-rate-limit": "^8.2.1", "helmet": "^8.1.0", "ioredis": "^5.9.0", "opossum": "^9.0.0", "prom-client": "^15.1.3", "rate-limit-redis": "^4.3.1", "swagger-jsdoc": "^6.2.8", "swagger-ui-express": "^5.0.1", "zod": "^4.3.5" }, "devDependencies": { "@goodgo/eslint-config": "workspace:*", "@goodgo/tsconfig": "workspace:*", "@jest/globals": "^30.2.0", "@types/cors": "^2.8.19", "@types/dotenv": "^8.2.3", "@types/express": "^5.0.6", "@types/ioredis": "^5.0.0", "@types/jest": "^30.0.0", "@types/node": "^25.0.3", "@types/opossum": "^8.1.9", "@types/supertest": "^6.0.3", "@types/swagger-jsdoc": "^6.0.4", "@types/swagger-ui-express": "^4.1.8", "jest": "^30.2.0", "prisma": "^7.2.0", "supertest": "^7.2.2", "ts-jest": "^29.4.6", "ts-node": "^10.9.2", "tsx": "^4.21.0", "typescript": "^5.9.3" } }