- pnpm workspace with packages/app, packages/server, packages/shared - @mp-pilates/shared: enums, constants, TypeScript interfaces for all 8 data models - @mp-pilates/server: NestJS bootstrap with health check, validation pipe, CORS - Base TypeScript config with strict mode
65 lines
1.8 KiB
JSON
65 lines
1.8 KiB
JSON
{
|
|
"name": "@mp-pilates/server",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"scripts": {
|
|
"build": "nest build",
|
|
"dev": "nest start --watch",
|
|
"start": "nest start",
|
|
"start:prod": "node dist/main",
|
|
"test": "jest",
|
|
"test:watch": "jest --watch",
|
|
"test:cov": "jest --coverage",
|
|
"prisma:generate": "prisma generate",
|
|
"prisma:migrate": "prisma migrate dev",
|
|
"prisma:seed": "ts-node prisma/seed.ts",
|
|
"lint": "eslint \"{src,test}/**/*.ts\""
|
|
},
|
|
"dependencies": {
|
|
"@mp-pilates/shared": "workspace:*",
|
|
"@nestjs/common": "^10.4.0",
|
|
"@nestjs/config": "^3.2.0",
|
|
"@nestjs/core": "^10.4.0",
|
|
"@nestjs/jwt": "^10.2.0",
|
|
"@nestjs/passport": "^10.0.3",
|
|
"@nestjs/platform-express": "^10.4.0",
|
|
"@nestjs/schedule": "^4.1.0",
|
|
"@prisma/client": "^5.19.0",
|
|
"class-transformer": "^0.5.1",
|
|
"class-validator": "^0.14.1",
|
|
"passport": "^0.7.0",
|
|
"passport-jwt": "^4.0.1",
|
|
"reflect-metadata": "^0.2.2",
|
|
"rxjs": "^7.8.1"
|
|
},
|
|
"devDependencies": {
|
|
"@nestjs/cli": "^10.4.0",
|
|
"@nestjs/schematics": "^10.1.0",
|
|
"@nestjs/testing": "^10.4.0",
|
|
"@types/express": "^4.17.21",
|
|
"@types/jest": "^29.5.12",
|
|
"@types/passport-jwt": "^4.0.1",
|
|
"jest": "^29.7.0",
|
|
"prisma": "^5.19.0",
|
|
"source-map-support": "^0.5.21",
|
|
"supertest": "^7.0.0",
|
|
"ts-jest": "^29.2.0",
|
|
"ts-node": "^10.9.2",
|
|
"typescript": "^5.4.0"
|
|
},
|
|
"jest": {
|
|
"moduleFileExtensions": ["js", "json", "ts"],
|
|
"rootDir": "src",
|
|
"testRegex": ".*\\.spec\\.ts$",
|
|
"transform": {
|
|
"^.+\\.(t|j)s$": "ts-jest"
|
|
},
|
|
"collectCoverageFrom": ["**/*.(t|j)s", "!**/*.module.ts", "!main.ts"],
|
|
"coverageDirectory": "../coverage",
|
|
"testEnvironment": "node",
|
|
"moduleNameMapper": {
|
|
"^@mp-pilates/shared(.*)$": "<rootDir>/../../shared/src$1"
|
|
}
|
|
}
|
|
}
|