Required Commands and Checks
Use these commands to match CI and keep the working tree clean.
After Every Change
# Build the site when you need a fresh dist/
bun run build
# Prepare builds and run smoke/worker + content checks
bun run test
# Run unit tests quickly (skips build lifecycle where possible)
bun run test:unit:fast
# Lint code
bun run lint
# Fast verification loop
bun run verify:quick
Discovery Shortcuts
# Find matching components or styles
rg "ComponentName|class-name" app/src
# Trace shared copy keys in site.json
rg "navigation\\.|pages\\." app/src/content/site.json
# Locate worker routes, bindings, or handlers
rg "fetch\\(|env\\." worker
Run these helpers frequently to avoid surprises:
# Audit and auto-fix local environment issues
bun run doctor --fix
# Ensure node_modules is not committed
bun run check:node-modules
# Build site + worker once for test suites
bun run prepare:tests
Verification Workflow
Run all checks in CI order:
bun run verify # Runs: check:node-modules → lint → test (builds once via prepare:tests, then unit + content)
Content Changes
Use these when editing content or shared site copy:
# Rebuild pages and regenerate sitemap output
bun run build
# Check content linting
bun run test:content
End-to-End Testing
Run after navigation, form, or layout changes (after bun run prepare:tests):
bun run test:e2e # Runs Playwright browser tests