43 lines
1.2 KiB
JSON
43 lines
1.2 KiB
JSON
{
|
|
"name": "educlean",
|
|
"private": true,
|
|
"version": "0.0.0",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite",
|
|
"build": "vite build",
|
|
"preview": "vite preview",
|
|
"dev:api": "tsx watch server/src/index.ts",
|
|
"start:api": "tsx server/src/index.ts",
|
|
"db:migrate": "tsx server/src/db/migrate.ts",
|
|
"db:bootstrap-admin": "tsx server/src/db/bootstrap-admin.ts",
|
|
"db:seed-demo-content": "tsx server/src/db/seed-demo-content.ts",
|
|
"typecheck:client": "tsc --project tsconfig.json",
|
|
"typecheck:api": "tsc --project server/tsconfig.json",
|
|
"typecheck": "npm run typecheck:client && npm run typecheck:api"
|
|
},
|
|
"dependencies": {
|
|
"@fastify/cors": "^11.0.0",
|
|
"@fastify/jwt": "^9.1.0",
|
|
"dotenv": "^16.6.1",
|
|
"fastify": "^5.3.2",
|
|
"fastify-plugin": "^5.0.1",
|
|
"lucide-react": "0.344.0",
|
|
"nodemailer": "^10.0.1",
|
|
"pg": "^8.16.3",
|
|
"react": "18.2.0",
|
|
"react-dom": "18.2.0",
|
|
"react-router-dom": "6.22.3",
|
|
"zod": "^3.24.4"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^22.14.0",
|
|
"@types/nodemailer": "^8.0.1",
|
|
"@types/pg": "^8.15.4",
|
|
"@vitejs/plugin-react": "^5.0.0",
|
|
"tsx": "^4.19.4",
|
|
"typescript": "~5.8.2",
|
|
"vite": "^6.2.0"
|
|
}
|
|
}
|