Accessibility audit (pa11y + axe)
WCAG checks on the built site (_site/) using Puppeteer’s Chromium (not system Chrome).
From tools/a11y/:
npm ci # first time
npm run a11y # build _site if needed, serve, run pa11y-ci
From repo root:
(cd tools/a11y && npm run a11y)
Config: .pa11yci.json — edit the URL list when you add important templates.
Manual checks (not automated): keyboard-only navigation, 200% zoom, axe DevTools on pages you changed.
Do not use @axe-core/cli against system Chrome unless you sync drivers — it breaks when Chrome auto-updates.