| { | |
| "name": "lmdpro", | |
| "version": "1.0.0", | |
| "description": "LMDpro - Professional AI-powered learning management platform", | |
| "private": true, | |
| "author": "LMDpro Team", | |
| "license": "MIT", | |
| "keywords": [ | |
| "ai", | |
| "learning", | |
| "management", | |
| "nextjs", | |
| "react", | |
| "typescript" | |
| ], | |
| "repository": { | |
| "type": "git", | |
| "url": "https://github.com/lmdpro/lmdpro.git" | |
| }, | |
| "scripts": { | |
| "dev": "next dev --turbo", | |
| "dev:fast": "next dev --turbo --experimental-https", | |
| "genkit:dev": "genkit start -- tsx src/ai/dev.ts", | |
| "genkit:watch": "genkit start -- tsx --watch src/ai/dev.ts", | |
| "build": "next build", | |
| "build:analyze": "ANALYZE=true next build", | |
| "build:fast": "next build --experimental-build-mode=compile", | |
| "start": "next start", | |
| "start:turbo": "next start --turbo", | |
| "preview": "next build && next start", | |
| "lint": "next lint", | |
| "lint:fix": "next lint --fix", | |
| "typecheck": "tsc --noEmit", | |
| "clean": "rm -rf .next node_modules/.cache dist", | |
| "clean:all": "rm -rf .next node_modules/.cache dist node_modules && npm install", | |
| "optimize": "npm run clean && npm run build", | |
| "deploy": "node scripts/deploy.js", | |
| "live-preview": "npm run build && npm run start", | |
| "standalone": "node .next/standalone/server.js", | |
| "health": "curl http://localhost:3000/api/health || echo 'Server not running'" | |
| }, | |
| "dependencies": { | |
| "@genkit-ai/googleai": "^1.8.0", | |
| "@genkit-ai/next": "^1.8.0", | |
| "@hookform/resolvers": "^3.9.1", | |
| "@next/bundle-analyzer": "^15.1.5", | |
| "@radix-ui/react-accordion": "^1.2.3", | |
| "@radix-ui/react-alert-dialog": "^1.1.6", | |
| "@radix-ui/react-avatar": "^1.1.3", | |
| "@radix-ui/react-checkbox": "^1.1.4", | |
| "@radix-ui/react-dialog": "^1.1.6", | |
| "@radix-ui/react-dropdown-menu": "^2.1.6", | |
| "@radix-ui/react-label": "^2.1.2", | |
| "@radix-ui/react-menubar": "^1.1.6", | |
| "@radix-ui/react-popover": "^1.1.6", | |
| "@radix-ui/react-progress": "^1.1.2", | |
| "@radix-ui/react-radio-group": "^1.2.3", | |
| "@radix-ui/react-scroll-area": "^1.2.3", | |
| "@radix-ui/react-select": "^2.1.6", | |
| "@radix-ui/react-separator": "^1.1.2", | |
| "@radix-ui/react-slider": "^1.2.3", | |
| "@radix-ui/react-slot": "^1.1.2", | |
| "@radix-ui/react-switch": "^1.1.3", | |
| "@radix-ui/react-tabs": "^1.1.3", | |
| "@radix-ui/react-toast": "^1.2.6", | |
| "@radix-ui/react-tooltip": "^1.1.8", | |
| "@tanstack/react-query": "^5.59.20", | |
| "@vercel/analytics": "^1.3.1", | |
| "@vercel/speed-insights": "^1.0.15", | |
| "class-variance-authority": "^0.7.1", | |
| "clsx": "^2.1.1", | |
| "date-fns": "^3.6.0", | |
| "dotenv": "^16.5.0", | |
| "firebase": "^11.9.1", | |
| "framer-motion": "^11.15.0", | |
| "genkit": "^1.8.0", | |
| "lucide-react": "^0.475.0", | |
| "next": "^15.1.5", | |
| "next-auth": "^4.24.11", | |
| "next-intl": "^4.3.4", | |
| "next-themes": "^0.3.0", | |
| "react": "^18.3.1", | |
| "react-day-picker": "^8.10.1", | |
| "react-dom": "^18.3.1", | |
| "react-hook-form": "^7.54.2", | |
| "react-hot-toast": "^2.4.1", | |
| "recharts": "^2.15.1", | |
| "sonner": "^1.7.0", | |
| "tailwind-merge": "^3.0.1", | |
| "tailwindcss-animate": "^1.0.7", | |
| "zod": "^3.24.2", | |
| "zustand": "^5.0.1" | |
| }, | |
| "devDependencies": { | |
| "@types/node": "^20.17.10", | |
| "@types/react": "^18.3.18", | |
| "@types/react-dom": "^18.3.5", | |
| "@typescript-eslint/eslint-plugin": "^6.21.0", | |
| "@typescript-eslint/parser": "^6.21.0", | |
| "autoprefixer": "^10.4.20", | |
| "eslint": "^8.57.1", | |
| "eslint-config-next": "^15.1.5", | |
| "genkit-cli": "^1.8.0", | |
| "postcss": "^8.5.4", | |
| "prettier": "^3.4.2", | |
| "prettier-plugin-tailwindcss": "^0.6.8", | |
| "tailwindcss": "^3.4.17", | |
| "typescript": "^5.7.2" | |
| }, | |
| "engines": { | |
| "node": ">=18.17.0", | |
| "npm": ">=9.0.0" | |
| } | |
| } | |