-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpackage.json
More file actions
100 lines (100 loc) · 2.95 KB
/
Copy pathpackage.json
File metadata and controls
100 lines (100 loc) · 2.95 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": "hermes-api",
"version": "1.0.0",
"description": "api de microsserviço de envio de e-mails transacionais.",
"license": "ISC",
"author": "ruanlopes1350",
"type": "module",
"main": "server.js",
"scripts": {
"dev:api": "tsx watch src/server.ts",
"dev:worker": "tsx watch src/worker.ts",
"build": "npm run docs:generate && tsc -p tsconfig.json && cp src/swagger-output.json dist/swagger-output.json",
"docker": "docker compose up --build --force-recreate -d",
"start:api": "node dist/server.js",
"start:worker": "node dist/worker.js",
"send": "",
"clear": "rm -rf dist && rm -rf node_modules && npm install",
"format:fix": "prettier --write \"src/**/*.{ts,js,json}\"",
"format:check": "prettier --check \"src/**/*.{ts,js,json}\"",
"docs:generate": "tsx src/docs/swagger.ts",
"seed": "tsx src/seeds/index.ts",
"db:generate": "drizzle-kit generate",
"db:push": "drizzle-kit push",
"db:migrate": "drizzle-kit migrate",
"db:pull": "drizzle-kit pull",
"db:check": "drizzle-kit check",
"db:drop": "drizzle-kit drop",
"db:studio": "drizzle-kit studio",
"db:up": "docker compose up --build --force-recreate -d db redis api worker",
"db:stop": "docker compose stop db redis",
"db:down": "docker compose down",
"db:reset": "docker compose down -v && docker compose up -d db redis api worker"
},
"keywords": [
"api",
"nodejs",
"express",
"email",
"transactional",
"microservice",
"mjml",
"bullmq",
"redis",
"oauth2",
"smtp",
"drizzle",
"postgres",
"hermes-gateway"
],
"dependencies": {
"@asteasolutions/zod-to-openapi": "^8.5.0",
"argon2": "^0.44.0",
"axios": "^1.16.1",
"better-auth": "^1.5.5",
"bullmq": "^5.71.0",
"chalk": "^5.6.2",
"cors": "^2.8.6",
"date-fns": "^4.4.0",
"dompurify": "^3.4.2",
"dotenv": "^17.3.1",
"drizzle-orm": "^0.45.1",
"express": "^5.2.1",
"express-rate-limit": "^8.3.2",
"googleapis": "^171.4.0",
"handlebars": "^4.7.8",
"ioredis": "^5.10.1",
"jsdom": "^29.1.1",
"jsonwebtoken": "^9.0.3",
"mjml": "^4.18.0",
"node-cron": "^4.2.1",
"nodemailer": "^8.0.3",
"pg": "^8.20.0",
"postgres": "^3.4.8",
"rate-limit-redis": "^4.3.1",
"swagger-jsdoc": "^6.3.0",
"swagger-ui-express": "^5.0.1",
"typescript": "^5.9.3",
"uuid": "^13.0.0",
"zod": "^4.3.6"
},
"devDependencies": {
"@types/bcrypt": "^6.0.0",
"@types/cors": "^2.8.19",
"@types/dompurify": "^3.0.5",
"@types/express": "^5.0.6",
"@types/jsdom": "^28.0.1",
"@types/jsonwebtoken": "^9.0.10",
"@types/mjml": "^4.7.4",
"@types/node-cron": "^3.0.11",
"@types/nodemailer": "^7.0.11",
"@types/pg": "^8.18.0",
"@types/swagger-jsdoc": "^6.0.4",
"@types/swagger-ui-express": "^4.1.8",
"drizzle-kit": "^0.31.10",
"prettier": "^3.8.1",
"ts-node": "^10.9.2",
"tsx": "^4.21.0",
"z-schema": "^12.3.1"
}
}