A11y Gate embeds verifiable, citable accessibility attestation into every document you publish. Not an overlay. Not an opinion. Receipts.
CLI wraps axe-core + pa11y + veraPDF. Checks headings, alt text, contrast, links, PDF/UA, keyboard access. Five profiles from starter to strict.
Results hashed (SHA-256) and written into a schema-validated manifest (mprv:a11y_status). Machine-readable. Tamper-evident. Citable.
CI pipeline blocks merges on critical violations. Five gate states: pass, conditional_pass, fail, waived, expired. Manual review enforced for non-starter profiles.
# Install
pip install mirror-a11y
# Scan a site
mirror-a11y scan --input ./dist --profile standard --output ./evidence
# Enforce in CI
python enforce_a11y_policy.py --summary ./evidence/a11y_summary.json --block-on critical
# Generate receipt
mirror-a11y receipt --summary ./evidence/a11y_summary.json --format md
Compliance deadline: April 24, 2026 for large government entities. SaaS tools they procure must be accessible.
Live since June 2025. Applies to any company EU citizens can access. Overlays explicitly do not satisfy EAA.
Government and enterprise RFPs now require VPATs. 96% of the top 1M websites fail automated accessibility checks.
| Layer | Role |
|---|---|
| Authoring | Word macro, Google Docs menu, local lint rules, receipt insertion |
| Export | Tagged PDF export, HTML publish, slide export, metadata checks |
| Validation | mirror_a11y_cli, axe-core, pa11y, veraPDF |
| Manifest | mprv:a11y_status + evidence pointers, hashes, reviewer data |
| Evidence | Raw reports, summary JSON, checksums, receipt text |
| Archive | Whitepaper, schema, changelog, citation, release bundle |
Make accessibility provable. Make your work citable.