{
  "name": "ughpass-platform",
  "version": "1.0.0",
  "private": true,
  "scripts": {
    "dev": "next dev",
    "build": "next build && node scripts/postbuild.mjs",
    "start": "HOSTNAME=127.0.0.1 PORT=${PORT:-3000} node --env-file=.env .next/standalone/server.js",
    "worker": "tsx --conditions=react-server src/worker/index.ts",
    "db:generate": "drizzle-kit generate",
    "db:migrate": "tsx src/db/migrate.ts",
    "db:seed": "tsx src/db/seed.ts",
    "keys:generate": "tsx scripts/generate-keys.ts",
    "admin:grant": "tsx scripts/make-admin.ts",
    "typecheck": "tsc --noEmit"
  },
  "dependencies": {
    "@noble/ed25519": "^3.0.0",
    "bcryptjs": "^3.0.2",
    "drizzle-orm": "^0.45.0",
    "next": "15.5.28",
    "nodemailer": "^6.9.16",
    "pg": "^8.13.0",
    "pg-boss": "^12.0.0",
    "qrcode": "^1.5.4",
    "react": "^19.1.0",
    "react-dom": "^19.1.0",
    "server-only": "^0.0.1",
    "sharp": "^0.35.5",
    "web-push": "^3.6.7",
    "zod": "^3.25.0"
  },
  "devDependencies": {
    "@types/node": "^22",
    "@types/nodemailer": "^6.4.17",
    "@types/pg": "^8.11.0",
    "@types/qrcode": "^1.5.5",
    "@types/react": "^19",
    "@types/react-dom": "^19",
    "@types/web-push": "^3.6.4",
    "autoprefixer": "^10.4.20",
    "drizzle-kit": "^0.31.0",
    "postcss": "^8.4.49",
    "tailwindcss": "^3.4.17",
    "tsx": "^4.19.0",
    "typescript": "^5.7.0"
  },
  "engines": {
    "node": ">=22"
  }
}
