# ponytail: a thin façade over the npm scripts + dotnet + docker, NOT a second copy of # package.json. `task` (no args) lists everything runnable; the logic stays where it is — # `task ci` shells to scripts/ci-local.sh, which remains the gate. npm keeps working # exactly as before, and CI does not depend on `task` being installed. version: '3' tasks: default: silent: true cmd: task --list deps: internal: true status: - test -d node_modules cmd: npm ci dev: desc: Serve the SSP on :4200 (proxies /api to the backend) deps: [deps] cmd: npm start dev:bp: desc: Serve the behandelportal on :4201 deps: [deps] cmd: npm run start:behandelportal api: desc: Run the backend on :5000 (Swagger at /swagger) dir: backend cmd: dotnet run --project src/BigRegister.Api test: desc: Run the frontend tests (both apps + both shared libraries) deps: [deps] cmd: npm test test:api: desc: Run the backend rule + endpoint tests (skips the OpenZaak integration tests) dir: backend # Same filter as scripts/ci-local.sh: the Integration tests need a running OpenZaak # container (scripts/openzaak-ui-up.sh), so they are not part of the default gate. cmd: dotnet test BigRegister.slnx --filter "Category!=Integration" lint: desc: Lint the frontend (no `any`, import/layer boundaries) deps: [deps] cmd: npm run lint fmt: desc: Format the frontend with prettier and the backend with dotnet format deps: [deps] cmds: - npm run format - dotnet format backend/BigRegister.slnx build: desc: Build both Angular apps deps: [deps] cmd: npm run build ci: desc: Run the CI gate locally before pushing (scripts/ci-local.sh) deps: [deps] cmd: npm run ci e2e: desc: Run the Playwright end-to-end tests (starts its own servers) deps: [deps] cmd: npm run e2e sb: desc: Run the SSP Storybook instance deps: [deps] cmd: npm run storybook sb:bp: desc: Run the behandelportal Storybook instance deps: [deps] cmd: npm run storybook:behandelportal gen:api: desc: Regenerate the typed API client from the backend OpenAPI document deps: [deps] cmd: npm run gen:api up: desc: Start both apps + the backend with docker compose cmd: docker compose up down: desc: Stop the docker compose stack cmd: docker compose down