-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpackage.json
More file actions
102 lines (102 loc) · 2.74 KB
/
Copy pathpackage.json
File metadata and controls
102 lines (102 loc) · 2.74 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
101
102
{
"name": "finflow-api",
"version": "1.0.0",
"main": "dist/index.js",
"type": "commonjs",
"scripts": {
"dev": "nodemon --legacy-watch",
"lint": "npx eslint .",
"build": "tsc",
"seed": "prisma db seed",
"start": "node dist/index.js",
"test": "vitest --run",
"test:watch": "vitest",
"test:unit": "vitest --run test/unit",
"test:integration": "vitest --run test/integration",
"test:coverage": "vitest --run --coverage",
"test:ui": "vitest --ui",
"prepare": "husky"
},
"keywords": [
"finflow",
"finance",
"budget",
"expense-tracking"
],
"author": "",
"license": "ISC",
"description": "FinFlow – A production-ready Financial Management Backend API",
"dependencies": {
"@aws-sdk/client-s3": "^3.955.0",
"@aws-sdk/s3-request-presigner": "^3.955.0",
"@prisma/adapter-pg": "^7.1.0",
"@prisma/client": "7.1.0",
"argon2": "^0.44.0",
"bullmq": "^5.66.0",
"cookie-parser": "^1.4.7",
"cors": "^2.8.5",
"dotenv": "^17.2.2",
"express": "^5.1.0",
"express-rate-limit": "^8.1.0",
"helmet": "^8.1.0",
"hpp": "^0.2.3",
"ioredis": "^5.7.0",
"jsonwebtoken": "^9.0.2",
"mailgen": "^2.0.30",
"ms": "^2.1.3",
"nanoid": "^5.1.6",
"nodemailer": "^7.0.6",
"passport": "^0.7.0",
"passport-google-oauth20": "^2.0.0",
"rate-limit-redis": "^4.2.2",
"razorpay": "^2.9.6",
"swagger-jsdoc": "^6.2.8",
"swagger-ui-express": "^5.0.1",
"uuid": "^13.0.0",
"winston": "^3.17.0",
"winston-daily-rotate-file": "^5.0.0",
"zod": "^4.1.11"
},
"devDependencies": {
"@commitlint/cli": "^20.2.0",
"@commitlint/config-conventional": "^20.2.0",
"@eslint/js": "^9.36.0",
"@types/cookie-parser": "^1.4.9",
"@types/cors": "^2.8.19",
"@types/dotenv": "^6.1.1",
"@types/express": "^5.0.3",
"@types/express-rate-limit": "^5.1.3",
"@types/helmet": "^0.0.48",
"@types/hpp": "^0.2.6",
"@types/jsonwebtoken": "^9.0.10",
"@types/mailgen": "^2.0.7",
"@types/node": "^24.5.2",
"@types/nodemailer": "^7.0.1",
"@types/passport": "^1.0.17",
"@types/passport-google-oauth20": "^2.0.16",
"@types/rate-limit-redis": "^1.7.4",
"@types/supertest": "^6.0.3",
"@types/swagger-jsdoc": "^6.0.4",
"@types/swagger-ui-express": "^4.1.8",
"eslint": "^9.36.0",
"husky": "^9.1.7",
"ioredis-mock": "^8.13.1",
"lint-staged": "^16.2.7",
"nodemon": "^3.1.10",
"prisma": "7.1.0",
"supertest": "^7.1.4",
"ts-node": "^10.9.2",
"tsx": "^4.21.0",
"typescript": "^5.9.2",
"typescript-eslint": "^8.44.0",
"vitest": "^4.0.16"
},
"prisma": {
"seed": "ts-node prisma/seed.ts"
},
"lint-staged": {
"*.{ts,js}": [
"eslint --fix"
]
}
}