Dev.to WebDev πŸ›  Dev πŸ‘ 1

How we automated our Accessibility VPATs in CI πŸš€

Accessibility audits usually go out-of-date the minute you merge a PR. To fix this, we turned our ACR/VPAT into a continuous build artifact! We built a pipeline on top of tools like axe-core to catch what basic static a

Accessibility audits usually go out-of-date the minute you merge a PR. To fix this, we turned our ACR/VPAT into a continuous build artifact!

We built a pipeline on top of tools like axe-core to catch what basic static analysis misses:

  • Static: axe-core for baseline checks in Storybook.
  • Interactive: Custom Vitest helpers testing W3C keyboard contracts.
  • Manual: Subjective audits (e.g., screen readers) stored as JSON.

CI merges these. Violations fail the PR, while passes auto-generate a fresh PDF shipped with the release.

The failed AI experiment: We tried using an LLM to replace the manual step, but scrapped the whole thingβ€”it was way too non-deterministic to be a reliable CI gate!

Read the full technical breakdown: πŸ‘‰ Keeping 170+ Components Accessible: How We Made Atomic's VPAT a Build Artifact

πŸ“° Read the original article on Dev.to WebDev

Originally published by Dev.to WebDev. Aggregated on AIWithGhost for educational purposes β€” full credit and traffic to the original publisher.