Stop Guessing A11y: Auto-Generate Playwright Tests from Your GraphQL Schema
Accessibility checks usually arrive late and can be flaky. This session makes them contract-driven. We add lightweight @a11y hints (labels, roles) to a GraphQL schema and generate Playwright + axe-core tests. The schema becomes the source of truth for accessible names/roles, and your CI fails when the UI drifts. Live, I'll: (1) annotate a small schema, (2) run a single file Node generator that emits Playwright specs, and (3) execute them with clear pass/fail signals and reports.
You'll leave with a runnable starter plan, a minimal directive set you can copy, and a rollout path teams can adopt in days, starting with 5–10 critical screens. Stop guessing: make the schema the contract.
The demo will be from the GraphQL-a11y repo: https://github.com/vanessamj99/GraphQL-a11y.
Key Takeaways:
Minimal @a11y directive set that won't break existing clients.
Generator pattern: GraphQL → Playwright + axe-core.
CI gate that fails on semantic drift and accessibility violations.
About the speaker
Vanessa Johnson:
Vanessa Johnson is an Android Engineer at The New York Times, where she works at the intersection of mobile engineering, accessibility, and developer tooling. She is passionate about making accessibility a first-class, contract-driven part of the development workflow rather than an afterthought, and builds open-source tooling that generates accessibility tests directly from GraphQL schemas.