- Add React/Vite frontend for login, dashboard, reports, templates, users, settings, AI, speech, and media workflows. - Add NestJS/Prisma/PostgreSQL backend with auth, dashboard stats, reports, templates, users, departments, settings, files, AI, speech, audit logs, and HTML sanitization. - Add Prisma schema, migrations, seed data, persistent app sessions, Docker/Nginx deployment files, and upload volume configuration. - Add Vitest, Playwright, backend integration tests, and project documentation for requirements, design, permissions, API contracts, testing, deployment, security, and progress. - Configure production local fallback switch and remove unused Gemini direct dependency/env wiring.
72 lines
2.1 KiB
JSON
72 lines
2.1 KiB
JSON
{
|
|
"name": "react-example",
|
|
"private": true,
|
|
"version": "0.0.0",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite --port=3001 --host=0.0.0.0",
|
|
"server:dev": "tsx watch server/src/main.ts",
|
|
"server:build": "tsc -p server/tsconfig.json",
|
|
"server:start": "node server/dist/main.js",
|
|
"build": "vite build",
|
|
"preview": "vite preview",
|
|
"clean": "rm -rf dist",
|
|
"lint": "tsc --noEmit",
|
|
"test": "vitest run",
|
|
"test:e2e": "playwright test",
|
|
"prisma:generate": "prisma generate --schema server/prisma/schema.prisma",
|
|
"prisma:migrate": "prisma migrate dev --schema server/prisma/schema.prisma",
|
|
"prisma:seed": "prisma db seed --schema server/prisma/schema.prisma"
|
|
},
|
|
"dependencies": {
|
|
"@nestjs/common": "^11.1.19",
|
|
"@nestjs/config": "^4.0.4",
|
|
"@nestjs/core": "^11.1.19",
|
|
"@nestjs/platform-express": "^11.1.19",
|
|
"@prisma/adapter-pg": "^7.8.0",
|
|
"@prisma/client": "^7.8.0",
|
|
"@tailwindcss/vite": "^4.1.14",
|
|
"@vitejs/plugin-react": "^5.0.4",
|
|
"argon2": "^0.44.0",
|
|
"cookie-parser": "^1.4.7",
|
|
"diff": "^9.0.0",
|
|
"express": "^4.21.2",
|
|
"express-session": "^1.19.0",
|
|
"lucide-react": "^0.546.0",
|
|
"motion": "^12.23.24",
|
|
"pg": "^8.20.0",
|
|
"react": "^19.0.0",
|
|
"react-dom": "^19.0.0",
|
|
"react-router-dom": "^7.14.1",
|
|
"reflect-metadata": "^0.2.2",
|
|
"rxjs": "^7.8.2",
|
|
"sanitize-html": "^2.17.3",
|
|
"vite": "^6.2.0",
|
|
"ws": "^8.20.0",
|
|
"zod": "^4.4.1"
|
|
},
|
|
"devDependencies": {
|
|
"@nestjs/testing": "^11.1.19",
|
|
"@playwright/test": "^1.59.1",
|
|
"@testing-library/jest-dom": "^6.9.1",
|
|
"@testing-library/react": "^16.3.2",
|
|
"@types/cookie-parser": "^1.4.10",
|
|
"@types/express": "^4.17.21",
|
|
"@types/express-session": "^1.19.0",
|
|
"@types/node": "^22.14.0",
|
|
"@types/pg": "^8.20.0",
|
|
"@types/sanitize-html": "^2.16.1",
|
|
"@types/supertest": "^7.2.0",
|
|
"@types/ws": "^8.18.1",
|
|
"autoprefixer": "^10.4.21",
|
|
"jsdom": "^29.1.1",
|
|
"prisma": "^7.8.0",
|
|
"supertest": "^7.2.2",
|
|
"tailwindcss": "^4.1.14",
|
|
"tsx": "^4.21.0",
|
|
"typescript": "~5.8.2",
|
|
"vite": "^6.2.0",
|
|
"vitest": "^4.1.5"
|
|
}
|
|
}
|