{
  "name": "lms",
  "version": "1.0.0",
  "private": true,
  "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "next start",
    "lint": "next lint",
    "db:generate": "node node_modules/prisma/build/index.js generate",
    "db:push": "node node_modules/prisma/build/index.js db push",
    "db:migrate": "node node_modules/prisma/build/index.js migrate deploy",
    "db:seed": "node node_modules/tsx/dist/cli.mjs prisma/seed.ts",
    "db:studio": "node node_modules/prisma/build/index.js studio",
    "db:reset": "node node_modules/prisma/build/index.js migrate reset --force",
    "jobs": "node node_modules/tsx/dist/cli.mjs lib/jobs/worker.ts"
  },
  "prisma": {
    "seed": "tsx prisma/seed.ts"
  },
  "dependencies": {
    "@hookform/resolvers": "^3.9.0",
    "@prisma/client": "^5.22.0",
    "@radix-ui/react-accordion": "^1.2.0",
    "@radix-ui/react-alert-dialog": "^1.1.1",
    "@radix-ui/react-avatar": "^1.1.0",
    "@radix-ui/react-checkbox": "^1.1.1",
    "@radix-ui/react-collapsible": "^1.1.0",
    "@radix-ui/react-context-menu": "^2.2.1",
    "@radix-ui/react-dialog": "^1.1.1",
    "@radix-ui/react-dropdown-menu": "^2.1.1",
    "@radix-ui/react-hover-card": "^1.1.1",
    "@radix-ui/react-label": "^2.1.0",
    "@radix-ui/react-menubar": "^1.1.1",
    "@radix-ui/react-navigation-menu": "^1.2.0",
    "@radix-ui/react-popover": "^1.1.1",
    "@radix-ui/react-progress": "^1.1.0",
    "@radix-ui/react-radio-group": "^1.2.0",
    "@radix-ui/react-scroll-area": "^1.1.0",
    "@radix-ui/react-select": "^2.1.1",
    "@radix-ui/react-separator": "^1.1.0",
    "@radix-ui/react-slider": "^1.2.0",
    "@radix-ui/react-slot": "^1.1.0",
    "@radix-ui/react-switch": "^1.1.0",
    "@radix-ui/react-tabs": "^1.1.0",
    "@radix-ui/react-toast": "^1.2.1",
    "@radix-ui/react-toggle": "^1.1.0",
    "@radix-ui/react-toggle-group": "^1.1.0",
    "@radix-ui/react-tooltip": "^1.1.2",
    "@tanstack/react-query": "^5.51.1",
    "@tanstack/react-table": "^8.19.3",
    "axios": "^1.16.1",
    "bcrypt": "^6.0.0",
    "bcryptjs": "^2.4.3",
    "bullmq": "^5.8.3",
    "class-variance-authority": "^0.7.0",
    "clsx": "^2.1.1",
    "cmdk": "^1.0.0",
    "date-fns": "^3.6.0",
    "date-fns-tz": "^3.1.3",
    "decimal.js": "^10.4.3",
    "embla-carousel-react": "^8.1.7",
    "exceljs": "^4.4.0",
    "framer-motion": "^11.3.8",
    "ioredis": "^5.3.2",
    "jspdf": "^2.5.1",
    "jspdf-autotable": "^3.8.2",
    "lucide-react": "^0.395.0",
    "next": "14.2.35",
    "next-auth": "^4.24.7",
    "next-themes": "^0.3.0",
    "nodemailer": "^7.0.0",
    "otplib": "^12.0.1",
    "prisma": "^5.22.0",
    "qrcode": "^1.5.4",
    "react": "^18.3.1",
    "react-day-picker": "^8.10.1",
    "react-dom": "^18.3.1",
    "react-hook-form": "^7.52.1",
    "recharts": "^2.12.7",
    "sonner": "^1.5.0",
    "tailwind-merge": "^2.4.0",
    "tailwindcss-animate": "^1.0.7",
    "uuid": "^11.0.0",
    "vaul": "^0.9.1",
    "zod": "^3.23.8"
  },
  "devDependencies": {
    "@types/bcrypt": "^6.0.0",
    "@types/bcryptjs": "^2.4.6",
    "@types/node": "^20.14.11",
    "@types/qrcode": "^1.5.5",
    "@types/react": "^18.3.3",
    "@types/react-dom": "^18.3.0",
    "autoprefixer": "^10.4.19",
    "eslint": "^8.57.0",
    "eslint-config-next": "14.2.35",
    "postcss": "^8.4.39",
    "tailwindcss": "^3.4.6",
    "tsx": "^4.16.2",
    "typescript": "^5.5.3"
  }
}