{
  "name": "playpotes-backend",
  "private": true,
  "version": "0.1.0",
  "type": "module",
  "scripts": {
    "dev": "tsx watch src/server.ts",
    "build": "tsc -p tsconfig.json",
    "start": "node dist/server.js",
    "test:e2e:moderation": "tsx scripts/e2e-moderation.ts",
    "check:security": "tsx scripts/check-security-readiness.ts",
    "generate:sitemap": "tsx scripts/generate-sitemap.ts",
    "send:annonce-expiry-reminders": "node dist/jobs/send-annonce-expiry-reminders.js",
    "send:annonce-expiry-reminders:dev": "tsx src/jobs/send-annonce-expiry-reminders.ts"
  },
  "dependencies": {
    "@simplewebauthn/server": "^13.3.1",
    "bcryptjs": "^2.4.3",
    "cookie-parser": "^1.4.7",
    "cors": "^2.8.5",
    "disposable-email-domains": "^1.0.62",
    "dotenv": "^16.4.5",
    "express": "^4.21.1",
    "jsonwebtoken": "^9.0.2",
    "multer": "^2.0.2",
    "mysql2": "^3.11.3",
    "nodemailer": "^8.0.1",
    "socket.io": "^4.8.1",
    "tsx": "^4.19.1"
  },
  "devDependencies": {
    "@types/bcryptjs": "^2.4.6",
    "@types/cookie-parser": "^1.4.8",
    "@types/cors": "^2.8.17",
    "@types/express": "^4.17.21",
    "@types/jsonwebtoken": "^9.0.7",
    "@types/multer": "^2.0.0",
    "@types/node": "^22.7.5",
    "@types/nodemailer": "^7.0.11",
    "typescript": "^5.6.3"
  }
}
