{
  "name": "proof-of-work",
  "version": "1.0.0",
  "description": "Self-hosted multi-user workout planner and logger.",
  "private": true,
  "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "next start",
    "lint": "next lint",
    "db:push": "prisma db push",
    "db:seed": "npx tsx prisma/seed.ts",
    "db:studio": "prisma studio",
    "sync-library": "node scripts/sync-library.cjs",
    "test": "vitest run",
    "test:watch": "vitest",
    "test:coverage": "vitest run --coverage"
  },
  "dependencies": {
    "@prisma/client": "^5.0.0",
    "autoprefixer": "^10.4.16",
    "bcrypt": "^6.0.0",
    "clsx": "^2.0.0",
    "lucide-react": "^0.294.0",
    "next": "^14.0.0",
    "next-themes": "^0.2.1",
    "postcss": "^8.4.31",
    "react": "^18.0.0",
    "react-dom": "^18.0.0",
    "tailwind-merge": "^2.2.0",
    "tailwindcss": "^3.3.0",
    "zod": "^3.22.4"
  },
  "devDependencies": {
    "@types/bcrypt": "^6.0.0",
    "@types/node": "^20.5.0",
    "@types/react": "^18.2.20",
    "@types/react-dom": "^18.2.7",
    "@vitest/coverage-v8": "^4.1.5",
    "eslint": "^8.57.1",
    "eslint-config-next": "^14.2.35",
    "prisma": "^5.0.0",
    "tsx": "^4.7.0",
    "typescript": "^5.2.2",
    "vitest": "^4.1.5"
  }
}
