A11y Demo Site Verified accessibility pipeline.
See how a11y-evidence-engine and a11y-assist work together — scan HTML for violations, sign evidence with cryptographic provenance, and generate fix-oriented advisories.
Scan
./scripts/a11y.sh
Verify
a11y-assist ingest --verify-provenance
Result
Provenance: VERIFIED
Features
What this demo shows.
Evidence Generation
Scans HTML for WCAG violations and outputs structured findings with JSON Pointers to the offending elements.
Cryptographic Provenance
Every finding is signed with a SHA-256 digest. Verification proves evidence has not been tampered with since scan time.
Fix-Oriented Advisories
a11y-assist converts raw findings into actionable tasks with code examples showing exactly how to fix each issue.
CI/CD Integration
GitHub Actions workflows demonstrate blocking builds on regressions and uploading results as downloadable artifacts.
Intentional Bugs
The demo HTML contains real WCAG violations (missing lang, alt, labels) so you can see the full pipeline in action.
Artifact Inspection
Download CI artifacts to inspect findings, provenance records, digest chains, and advisory outputs locally.
Quick Start
Prerequisites
# Node.js 20+ and Python 3.10+
npm install -g a11y-evidence-engine
pip install a11y-assist Run locally
# Clone and run the pipeline
git clone https://github.com/mcp-tool-shop-org/a11y-demo-site
cd a11y-demo-site
./scripts/a11y.sh What happens
# 1. Scans html/ directory
# 2. Generates findings in results/
# 3. Ingests + verifies provenance
# 4. Outputs summary to console Inspect results
# Start with the summary
cat results/a11y-assist/ingest-summary.json
# Then the advisories
cat results/a11y-assist/advisories.json Pipeline
Scan → Sign → Verify → Advise.
1. Scan
a11y-evidence-engine scans HTML files and emits structured findings with element selectors and rule references.
2. Sign
Each finding gets a provenance envelope: a canonical JSON representation hashed with SHA-256 and stored alongside the evidence.
3. Verify
a11y-assist recomputes the digest from the evidence and compares it to the stored hash. Match = VERIFIED.
4. Advise
Verified findings are converted into fix-oriented advisories with code snippets, grouped by rule and severity.
Intentional Bugs
The demo HTML contains these WCAG violations on purpose.