{
  "name": "web",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "next start",
    "lint": "eslint",
    "db:generate": "drizzle-kit generate",
    "db:migrate": "drizzle-kit migrate",
    "db:seed": "tsx src/server/db/seed.ts",
    "db:reset": "pnpm db:migrate && pnpm db:seed",
    "test": "vitest run",
    "typecheck": "next typegen && tsc --noEmit",
    "worker": "tsx src/worker.ts"
  },
  "dependencies": {
    "@scalar/nextjs-api-reference": "0.12.9",
    "@tailwindcss/postcss": "4.3.3",
    "@tanstack/react-table": "8.21.3",
    "bcryptjs": "3.0.3",
    "class-variance-authority": "^0.7.1",
    "clsx": "^2.1.1",
    "cmdk": "^1.1.1",
    "drizzle-orm": "0.45.3",
    "jose": "6.2.12",
    "lucide-react": "^1.55.0",
    "next": "16.4.0",
    "next-themes": "^0.4.6",
    "nodemailer": "10.0.16",
    "pg": "8.23.1",
    "postcss": "8.5.29",
    "radix-ui": "^1.7.0",
    "react": "19.3.0",
    "react-dom": "19.3.0",
    "shadcn": "^4.21.4",
    "sonner": "^2.0.8",
    "tailwind-merge": "^3.7.0",
    "tailwindcss": "4.3.3",
    "tw-animate-css": "^1.4.0",
    "zod": "4.6.5"
  },
  "devDependencies": {
    "@types/node": "^20",
    "@types/nodemailer": "^8.0.2",
    "@types/pg": "8.23.1",
    "@types/react": "^19",
    "@types/react-dom": "^19",
    "drizzle-kit": "0.31.11",
    "eslint": "^9",
    "eslint-config-next": "16.4.0",
    "tsx": "4.23.15",
    "typescript": "^5",
    "vitest": "5.0.3"
  },
  "packageManager": "pnpm@12.10.1"
}
