{
  "name": "custoray-backend",
  "version": "1.0.0",
  "description": "Custoray SaaS backend API",
  "main": "dist/index.js",
  "scripts": {
    "start": "node dist/index.js",
    "dev": "nodemon src/index.ts",
    "build": "tsc",
    "test": "echo \"Error: no test specified\" && exit 1",
    "start:prod": "npm run build && npm start",
    "db:generate": "prisma generate",
    "db:push": "prisma db push",
    "db:migrate": "prisma migrate dev",
    "db:seed": "ts-node prisma/seed.ts",
    "stripe:sync": "ts-node --transpile-only src/scripts/sync-stripe-catalog.ts",
    "smtp:test": "ts-node --transpile-only src/scripts/test-smtp.ts",
    "format": "prettier --write .",
    "format:check": "prettier --check .",
    "fix": "npx eslint --fix .",
    "check-lint": "eslint . --ext .ts,.tsx --ext .js,.jsx"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "dependencies": {
    "@prisma/client": "^6.5.0",
    "bcryptjs": "^3.0.3",
    "cookie-parser": "^1.4.7",
    "cors": "^2.8.5",
    "dotenv": "^16.4.7",
    "express": "^4.21.2",
    "express-rate-limit": "^7.5.0",
    "google-auth-library": "^11.0.2",
    "helmet": "^8.0.0",
    "jsonwebtoken": "^9.0.2",
    "morgan": "^1.10.0",
    "multer": "^2.0.2",
    "otpauth": "^9.5.1",
    "qrcode": "^1.5.4",
    "stripe": "^17.7.0",
    "zod": "^3.24.2"
  },
  "devDependencies": {
    "@types/cookie-parser": "^1.4.8",
    "@types/cors": "^2.8.17",
    "@types/express": "^5.0.0",
    "@types/jsonwebtoken": "^9.0.9",
    "@types/morgan": "^1.9.9",
    "@types/multer": "^2.0.0",
    "@types/node": "^22.13.8",
    "@types/qrcode": "^1.5.6",
    "eslint-config-prettier": "^10.0.2",
    "eslint-plugin-prettier": "^5.2.3",
    "nodemon": "^3.1.9",
    "prisma": "^6.5.0",
    "ts-node": "^10.9.2",
    "tsconfig-paths": "^4.2.0",
    "typescript": "^5.8.2"
  }
}
