Skip to content

Command Reference ​

Root and workspace package.json files own the executable scripts. Run pnpm run to list root scripts or pnpm --filter @kartuli/game-client run to list a workspace's scripts. Read the relevant manifest for exact implementation; this page keeps only common entry points and operational caveats.

Start with Node/pnpm for the pinned toolchain.

TaskRoot commandBoundary
Validate changespnpm run validate:allLint, typecheck and workspace tests, including documentation contracts
Build all surfacespnpm run build:allProduction builds; separate from validation
Generate coveragepnpm run test:all:coverageRoot Vitest projects; excludes Storybook and E2E
Work on one surfacepnpm run c:dev:game-clientEquivalent scripts exist for Backoffice, Storybook and Web Docs
Build or preview one surfacepnpm run c:build:game-client, pnpm run c:preview:game-clientInspect target-specific preview behavior below
Run a target's E2Epnpm e2e game-clientBuilds and previews that target, then runs its suite. --url uses an existing server instead
Build documentationpnpm run c:build:web-docs-clientValidates source/navigation, renders and checks the built index
Inspect dependency diagramspnpm run diagrams:allRequires local Graphviz dot
Run Lighthousepnpm run lighthouse --collect.url=<public-url>One assertion-free mobile run; uploads to temporary public storage
Render Lighthouse resultpnpm run lighthouse:summary --requested-url=<public-url> --audit-outcome=success --output=lighthouse-summary.mdReads .lighthouseci/ and fails on incomplete metrics or report-link mapping

Execution differences ​

  • *:no-cache scripts force Turbo execution; turbo:cache:wipe removes the local Turbo cache.
  • lint:all:fix and lint:root:fix modify files; ordinary lint checks do not.
  • test:all includes Storybook Chromium tests and the dependency-free Lighthouse reporter tests. Coverage has a different UI-test scope but also runs the reporter tests; see Testing.
  • App preview builds then starts. Game Client development/start/preview uses port 3000; Backoffice uses port 3001 for the same local lifecycle. pnpm e2e <target> starts that preview itself. --reuse-server attaches only when the process already identifies as the selected target.
  • Storybook preview serves existing storybook-static through its current npx http-server script; it does not build first. pnpm e2e storybook builds and then serves. See Toolchain support for that undeclared executable and the pnpm-only contributor convention.
  • Docs preview builds first; direct vitepress preview serves an existing build only. pnpm e2e web-docs-client uses the preview script, which builds. Its local base path is /kartuli.
  • E2E target, suite, URL and server lifecycle come from pnpm e2e. See E2E Runner.
  • Lighthouse can upload reports to temporary public storage; inspect its quality guide before running against sensitive pages.

Use the owning tool guides for prerequisites, expected output and failure diagnosis. When scripts change, update affected workflows and these operational distinctions without copying the entire manifest into Markdown.