Sets up the initial project infrastructure only, no business modules yet: - apps/api: Express/TypeScript backend skeleton (healthcheck route, zod-validated env config, error handling, Prisma initialized with no models yet, Postgres as the target DB) - apps/web: React/Vite/TypeScript frontend skeleton, Capacitor-ready for the future mobile app - packages/shared: empty placeholder for types/schemas shared between api and web once the data model is defined - Tooling: Biome (lint/format), Mocha+Chai+Supertest (api tests), Cypress (web e2e smoke test), GitHub Actions CI (lint + test + build + e2e) - docker-compose.yml for local Postgres - README documents setup steps, including the Cypress binary caveat (pnpm install doesn't always fetch the native binary — needs `cypress install` run locally per machine) Fixes along the way: - apps/web/cypress.config.ts: disable GPU on browser launch for headless/sandboxed environments - apps/web/tsconfig.*: split into solution/app/node tsconfig files (standard Vite pattern) — the previous single-file setup caused `tsc -b` to emit compiled .js/.d.ts next to vite.config.ts and cypress.config.ts
32 lines
674 B
JSON
32 lines
674 B
JSON
{
|
|
"name": "batch-cooking",
|
|
"private": true,
|
|
"type": "module",
|
|
"engines": {
|
|
"node": ">=22"
|
|
},
|
|
"packageManager": "pnpm@10.12.4",
|
|
"scripts": {
|
|
"lint": "biome check .",
|
|
"lint:fix": "biome check --write .",
|
|
"format": "biome format --write .",
|
|
"test": "pnpm -r test",
|
|
"build": "pnpm -r build",
|
|
"dev:api": "pnpm --filter api dev",
|
|
"dev:web": "pnpm --filter web dev"
|
|
},
|
|
"devDependencies": {
|
|
"@biomejs/biome": "^1.9.4",
|
|
"typescript": "^5.7.2"
|
|
},
|
|
"pnpm": {
|
|
"onlyBuiltDependencies": [
|
|
"@biomejs/biome",
|
|
"@prisma/client",
|
|
"@prisma/engines",
|
|
"cypress",
|
|
"esbuild",
|
|
"prisma"
|
|
]
|
|
}
|
|
}
|