{ "name": "letsbe-hub", "version": "1.0.0", "private": true, "scripts": { "dev": "next dev", "build": "next build", "start": "next start", "lint": "next lint", "typecheck": "tsc --noEmit", "format": "prettier --write .", "db:generate": "prisma generate", "db:migrate": "prisma migrate dev", "db:push": "prisma db push", "db:seed": "tsx prisma/seed.ts", "db:studio": "prisma studio", "test": "vitest", "test:run": "vitest run" }, "dependencies": { "@auth/prisma-adapter": "^2.7.4", "@hookform/resolvers": "^3.9.1", "@prisma/client": "^6.2.1", "@radix-ui/react-avatar": "^1.1.2", "@radix-ui/react-dialog": "^1.1.4", "@radix-ui/react-dropdown-menu": "^2.1.4", "@radix-ui/react-icons": "^1.3.2", "@radix-ui/react-label": "^2.1.1", "@radix-ui/react-popover": "^1.1.4", "@radix-ui/react-select": "^2.1.4", "@radix-ui/react-separator": "^1.1.1", "@radix-ui/react-slot": "^1.1.1", "@radix-ui/react-tabs": "^1.1.2", "@radix-ui/react-toast": "^1.2.4", "@radix-ui/react-tooltip": "^1.1.6", "@tanstack/react-query": "^5.64.2", "@tanstack/react-table": "^8.20.6", "bcryptjs": "^2.4.3", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", "lucide-react": "^0.469.0", "next": "15.1.4", "next-auth": "5.0.0-beta.25", "next-themes": "^0.4.4", "react": "^19.0.0", "react-dom": "^19.0.0", "react-hook-form": "^7.54.2", "tailwind-merge": "^2.6.0", "tailwindcss-animate": "^1.0.7", "zod": "^3.24.1", "zustand": "^5.0.3" }, "devDependencies": { "@types/bcryptjs": "^2.4.6", "@types/node": "^22.10.5", "@types/react": "^19.0.4", "@types/react-dom": "^19.0.2", "autoprefixer": "^10.4.20", "eslint": "^9.17.0", "eslint-config-next": "15.1.4", "postcss": "^8.4.49", "prettier": "^3.4.2", "prisma": "^6.2.1", "tailwindcss": "^3.4.17", "tsx": "^4.19.2", "typescript": "^5.7.3", "vitest": "^2.1.8" } }