Repository navigation
Expand file tree
/
Copy pathpackage.json
More file actions
100 lines (100 loc) · 4.35 KB
/
Copy pathpackage.json
File metadata and controls
100 lines (100 loc) · 4.35 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
{
"name": "portfolio-api",
"version": "2.17.1",
"description": "Production NestJS REST API — JWT auth, TypeORM, rate limiting, Docker, 90%+ test coverage",
"author": "",
"private": true,
"license": "UNLICENSED",
"scripts": {
"build": "nest build",
"typecheck": "tsc --noEmit -p tsconfig.build.json && tsc --noEmit -p tsconfig.spec.json",
"format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\" \"eslint.config.js\"",
"format:check": "prettier --check \"src/**/*.ts\" \"test/**/*.ts\" \"eslint.config.js\"",
"start": "nest start",
"start:dev": "nest start --watch",
"start:debug": "nest start --debug --watch",
"start:prod": "node dist/src/main",
"lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix",
"test": "vitest run",
"test:watch": "vitest",
"test:cov": "vitest run --coverage",
"cov:badge": "istanbul-badges-readme --coverageDir=\"./coverage\"",
"test:debug": "vitest --inspect-brk --no-file-parallelism",
"test:e2e": "vitest run --config ./test/vitest-e2e.config.ts",
"migration:generate": "npx ts-node -P ./tsconfig.json -r tsconfig-paths/register ./node_modules/typeorm/cli.js migration:generate -d ./src/config/typeorm.config.ts ./src/database/migrations/migration",
"migration:create": "npx ts-node -P ./tsconfig.json -r tsconfig-paths/register ./node_modules/typeorm/cli.js migration:create -d ./src/config/typeorm.config.ts ./src/database/migrations/migration",
"migration:run": "npx ts-node -P ./tsconfig.json -r tsconfig-paths/register ./node_modules/typeorm/cli.js migration:run -d ./src/config/typeorm.config.ts",
"migration:revert": "npx ts-node -P ./tsconfig.json -r tsconfig-paths/register ./node_modules/typeorm/cli.js migration:revert -d ./src/config/typeorm.config.ts",
"migration:run:prod": "node ./node_modules/typeorm/cli.js migration:run -d ./dist/src/config/typeorm.config.prod.js",
"migration:revert:prod": "node ./node_modules/typeorm/cli.js migration:revert -d ./dist/src/config/typeorm.config.prod.js",
"seed:test": "npx ts-node -r tsconfig-paths/register src/database/seeder.ts",
"seed:test:prod": "node dist/src/database/seeder.prod.js",
"seed:update-projects": "npx ts-node -r tsconfig-paths/register src/database/seeds/update-projects-seed.ts",
"seed:update-projects:prod": "node dist/src/database/seeds/update-projects-seed.prod.js",
"seed:normalize-hero-urls": "npx ts-node -r tsconfig-paths/register src/database/seeds/normalize-hero-urls.ts",
"seed:update-project-spine": "npx ts-node -r tsconfig-paths/register src/database/seeds/update-project-spine.ts",
"seed:update-project-spine:prod": "node dist/src/database/seeds/update-project-spine.prod.js"
},
"dependencies": {
"@nestjs/axios": "^4",
"@nestjs/cache-manager": "^3",
"@nestjs/common": "^11",
"@nestjs/config": "^4",
"@nestjs/core": "^11",
"@nestjs/jwt": "^11",
"@nestjs/passport": "^11",
"@nestjs/platform-express": "^11",
"@nestjs/schedule": "^6",
"@nestjs/swagger": "^11",
"@nestjs/terminus": "^11",
"@nestjs/throttler": "^6",
"@nestjs/typeorm": "^11",
"@types/passport-jwt": "^4.0.1",
"axios": "^1.10.x",
"bcrypt": "^6",
"cache-manager": "^7",
"cache-manager-redis-yet": "^5",
"class-transformer": "^0.5",
"class-validator": "^0.14",
"express": "^5.1.0",
"helmet": "^8",
"mysql2": "^3",
"nestjs-cls": "^6",
"nodemailer": "^6",
"passport": "^0.7",
"passport-jwt": "^4",
"passport-local": "^1",
"reflect-metadata": "^0.2",
"rxjs": "^7.8",
"sanitize-html": "^2",
"swagger-ui-express": "^5",
"typeorm": "^0.3",
"webpack": "^5"
},
"devDependencies": {
"@nestjs/cli": "^11",
"@nestjs/schematics": "^11",
"@nestjs/testing": "^11",
"@types/bcrypt": "^6.0.0",
"@types/express": "^5",
"@types/node": "^24",
"@types/nodemailer": "^6",
"@types/passport-local": "^1.0.38",
"@types/sanitize-html": "^2",
"@types/supertest": "^6",
"@typescript-eslint/eslint-plugin": "^8",
"@typescript-eslint/parser": "^8",
"@vitest/coverage-v8": "^4",
"eslint": "^9",
"eslint-config-prettier": "^10",
"istanbul-badges-readme": "^1.9",
"prettier": "^3",
"supertest": "^7",
"ts-loader": "^9",
"ts-node": "^10",
"tsconfig-paths": "^4",
"typescript": "^5.8",
"vitest": "^4"
},
"packageManager": "yarn@4.14.1"
}