- Add an API container entrypoint that waits for PostgreSQL, runs Prisma migrations, seeds demo data, and then starts NestJS. - Keep Prisma CLI and seed dependencies available in the API runtime image and copy seed source dependencies into the container. - Add Docker Compose healthchecks and health-based startup ordering for PostgreSQL, API, and Nginx web services. - Add Docker initialization environment switches for migrations, seed, and startup retries. - Add a dedicated Docker deployment guide covering services, ports, initialization, HTTPS, production variables, backup, restore, and troubleshooting. - Update README, AGENTS, installation, deployment, progress, and environment example docs for the Dockerized workflow.
73 lines
2.2 KiB
JSON
73 lines
2.2 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": "npm run server:build && node server/dist/main.js",
|
|
"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:deploy": "prisma migrate deploy --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"
|
|
}
|
|
}
|