Skip to content

Commands

Every command runs from the repository’s root, after eval "$(fnm env --shell zsh)" (Node 24) and pnpm install.

CommandWhat it does
pnpm startThe one command: the installer (its questions on a first run, a check and a resume after), then the local stack, then where each part answers
pnpm readyStart the local stack and check the installation, changing nothing
CommandWhat it does
pnpm installerFirst run: four questions, the secrets, the database, the sample projects. A rerun checks what it knows, asks to confirm and resume, and never makes a secret twice. Add --no-sample to skip the sample projects, --yes to answer yes to confirmations
pnpm installer:checkCheck what it knows; change nothing (exit 1 if something is off)
pnpm installer:teardownDrop the database and its logins; remove the settings and the installer’s record
pnpm installer:adminMake the firm’s first admin, or let an admin back in, on the machine that holds the API’s settings
CommandWhat it does
pnpm local:upMake the stack’s certificates where missing, fetch and check the map extract, build the field app and the back office, start every service, wait until each answers over HTTPS; then build and start the API and the worker once the installer has made their settings
pnpm local:downStop and remove the containers; the data is kept
pnpm local:wipeDown, plus the data volumes, the generated settings and the certificates (the downloaded map extract is kept)
pnpm local:statusEach service and its health
pnpm local:accountsWrite the dev stack’s own accounts (Dana Reyes, Luis Ortega, Bayline County’s debris manager) and show how to sign in; --show only shows, --codes shows each authenticator’s code now. Local only, never shipped
CommandWhat it does
pnpm sampleLoad the two sample projects into the installation
pnpm scenariosRun the scenario harness: whole projects told as stories, the golden mission among them, each asserting exact statuses, review queues and ledgers
pnpm field:control-ticketsMake the printable control-ticket test set (400001–400050, a PDF to print and scan with each phone)
pnpm field:tryTry the field app’s current build by hand, in a world of its own with P1 and P2 set up, in a phone-sized browser; nothing goes into the installation’s database. Needs the stack up
CommandWhat it does
pnpm typecheckGenerate the Prisma client and type-check every workspace
pnpm testType-check, then every Vitest project (the database tests need the stack up)
pnpm e2eThe browser tests
pnpm lintESLint and Prettier, with no warnings allowed
pnpm formatFormat with Prettier
pnpm licencesCheck every installed package’s licence is compatible with Apache-2.0 for what ships
pnpm securityThe dependency audit, the secrets scan and the database’s grant tests
pnpm openapiGenerate apps/api/openapi.json from the shared contracts
pnpm chainThe whole verification chain, in order: the stack, the installer’s check, install, typecheck, test, scenarios, e2e, security, lint, licences. pnpm chain <step> runs the steps named
pnpm cleanRemove TypeScript’s build output
CommandWhat it does
pnpm --filter @open-adms/docs devServe this site locally with live reload
pnpm --filter @open-adms/docs buildBuild it to static files in apps/docs/dist/ and check every link, Markdown twin and llms.txt entry
pnpm --filter @open-adms/docs previewServe the built site