-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpackage.json
65 lines (65 loc) · 2.67 KB
/
package.json
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
{
"name": "take-home-task",
"version": "1.0.0",
"main": "dist/index.js",
"type": "module",
"scripts": {
"build": "npm run clean && tsc --project tsconfig.json",
"clean": "rm -rf dist",
"start": "node dist/index.js",
"start:dev": "npm run build && node --env-file=.env.dev dist/index.js",
"migrate": "drizzle-kit generate",
"ts-check": "tsc --noEmit",
"lint": "eslint src",
"format:check": "prettier . --check",
"format:write": "prettier . --write",
"test:unit": "vitest run --config ./vitest.config.unit.ts",
"test:unit:watch": "vitest watch --config ./vitest.config.unit.ts",
"start:integration-db": "docker-compose -f docker-compose.test.yaml up -d",
"stop:integration-db": "docker-compose -f docker-compose.test.yaml down",
"run:integration": "vitest run --config ./vitest.config.integration.ts",
"run:integration:watch": "vitest watch --config ./vitest.config.integration.ts",
"test:integration": "npm-run-all start:integration-db run:integration stop:integration-db --continue-on-error",
"test:integration:watch": "npm-run-all start:integration-db run:integration:watch stop:integration-db --continue-on-error",
"coverage:unit": "vitest run --config ./vitest.config.unit.ts --coverage",
"coverage:integration": "vitest run --config ./vitest.config.integration.ts --coverage",
"coverage:combine": "istanbul-merge --out .nyc_output/combined-coverage.json coverage/unit/coverage-final.json coverage/integration/coverage-final.json",
"coverage:combined-report": "nyc report --report-dir=coverage --reporter=lcov --reporter=text-summary",
"coverage": "npm-run-all coverage:unit start:integration-db coverage:integration stop:integration-db coverage:combine coverage:combined-report",
"load-test": "artillery run ./load_tests/artillery.yaml"
},
"engines": {
"node": ">=22.12.0"
},
"author": "Artem Kolichenkov",
"license": "GPL-3.0-or-later",
"devDependencies": {
"@eslint/js": "^9.17.0",
"@faker-js/faker": "^9.3.0",
"@tsconfig/node22": "^22.0.0",
"@types/node": "^22.10.2",
"@types/pg": "^8.11.10",
"@types/validator": "^13.12.2",
"@vitest/coverage-v8": "^2.1.8",
"artillery": "^2.0.21",
"drizzle-kit": "^0.30.1",
"eslint": "^9.17.0",
"globals": "^15.14.0",
"istanbul-merge": "^2.0.0",
"npm-run-all": "^4.1.5",
"nyc": "^17.1.0",
"prettier": "3.4.2",
"typescript": "^5.7.2",
"typescript-eslint": "^8.18.2",
"vite": "^6.0.6",
"vitest": "^2.1.8"
},
"dependencies": {
"@fastify/cors": "^10.0.1",
"drizzle-orm": "^0.38.3",
"fastify": "^5.2.0",
"fastify-plugin": "^5.0.1",
"pg": "^8.13.1",
"validator": "^13.12.0"
}
}