Skip to main content
Both apps in the war.re monorepo share a common set of yarn scripts. You always run commands from inside an app directory — either main/ or subdomains/ryan/. There is no root-level script runner. The sections below cover every available command, call out which ones are app-specific, and show the exact invocations for each context.

Running a Dev Server

Start the Next.js development server on localhost:3000:
cd main
yarn dev

Building for Production

Both apps use Next.js static export. yarn build compiles the app and writes the output to an out/ directory inside the app folder:
cd main
yarn build

Linting

Run ESLint using the next/core-web-vitals ruleset across the entire app:
cd main
yarn lint

Type Checking

Run the TypeScript compiler in check-only mode. The pretypecheck hook runs next typegen automatically before tsc --noEmit, so generated Next.js types are always up to date before the check runs:
cd main
yarn typecheck

Formatting

Use Prettier to format all files in the app, or check formatting without writing changes:
cd main
yarn format          # write formatting fixes
yarn format:check    # verify formatting, exit non-zero if issues found

Unit Tests

Jest unit tests are only available in subdomains/ryan/. The main/ app has no Jest test suite — use e2e tests there instead.
cd subdomains/ryan
yarn test               # run all Jest tests
yarn test:coverage      # run all Jest tests with a coverage report

End-to-End Tests

Both apps have a Playwright e2e suite. These are screenshot-based smoke tests that require a production build to be present before they run.
Always run yarn build before yarn e2e. Playwright serves the static out/ directory — if the build is missing or stale, the tests will fail or use outdated output.
cd main
yarn build
yarn e2e              # run Playwright smoke tests
yarn e2e:coverage     # run Playwright with V8 source-map coverage
yarn e2e:coverage is only available in main/. It enables browser source maps and uses monocart-coverage-reports to map coverage data back to TypeScript source files.

Command Reference

CommandAvailable inWhat it does
yarn devbothDev server at localhost:3000
yarn buildbothStatic export to out/
yarn lintbothESLint with next/core-web-vitals
yarn typecheckbothnext typegen then tsc --noEmit
yarn formatbothPrettier --write
yarn format:checkbothPrettier --check
yarn testsubdomains/ryan/ onlyJest unit tests
yarn test:coveragesubdomains/ryan/ onlyJest with coverage report
yarn e2ebothPlaywright smoke tests (build first)
yarn e2e:coveragemain/ onlyPlaywright with V8 source coverage