- Add helmet middleware for secure HTTP response headers - Add express-rate-limit with three limiters: - authLimiter: per-IP, 20 req/15min on /api/auth/* - gameLimiter: per-user, 150 req/15min (not yet wired) - lobbyLimiter: per-user, 20 req/15min (not yet wired) - Set trust proxy for correct client IP behind Caddy - Add tests for all three limiters and helmet headers
30 lines
729 B
JSON
30 lines
729 B
JSON
{
|
|
"name": "@lila/api",
|
|
"version": "1.0.0",
|
|
"private": true,
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "pnpm --filter shared build && pnpm --filter db build && tsx watch src/server.ts",
|
|
"build": "tsc",
|
|
"start": "node dist/src/server.js",
|
|
"test": "vitest"
|
|
},
|
|
"dependencies": {
|
|
"@lila/db": "workspace:*",
|
|
"@lila/shared": "workspace:*",
|
|
"better-auth": "^1.6.2",
|
|
"cors": "^2.8.6",
|
|
"express": "^5.2.1",
|
|
"express-rate-limit": "^8.4.0",
|
|
"helmet": "^8.1.0",
|
|
"ws": "^8.20.0"
|
|
},
|
|
"devDependencies": {
|
|
"@types/cors": "^2.8.19",
|
|
"@types/express": "^5.0.6",
|
|
"@types/supertest": "^7.2.0",
|
|
"@types/ws": "^8.18.1",
|
|
"supertest": "^7.2.2",
|
|
"tsx": "^4.21.0"
|
|
}
|
|
}
|