Accessibility engineering work — modules, AI integrations, CLI testing, screen-reader tooling, and education. This repo is the public entry point to the portfolio.
Public page: https://elizabeth1979.github.io/a11y-engineering-toolkit/
| Category | Repo | What it does | Status |
|---|---|---|---|
| Tools | a11y-engineering-toolkit |
Audit panel + UX widget (this repo) | Production |
screen-reader-cli |
CLI: scan, live SR, audit, test generation | Production | |
clip-to-ticket |
Recordings → WCAG-compliant tickets | v1.5.0 | |
| AI / Agents | a11y-expert-mcp |
MCP server for AI assistants — 4 tools, 33 ARIA patterns (PyPI) | v0.1.0 |
a11y-skills |
Canonical ARIA pattern instruction files | Active | |
visua11y |
AI accessibility Chrome extension | WIP | |
| Testing / Simulation | sr-visualizer |
Screen reader simulation in the browser | WIP |
| Education | a11y-for-feds-intro |
Developer workshop — 165 slides with visual simulations | Educational |
Full inventory with repo relationships, historical work, and mapping model: docs/portfolio-inventory.md.
The portfolio is the output of a consistent accessibility engineering methodology:
- Research — investigate a component pattern against WAI-ARIA Authoring Practices, screen reader behavior, and WCAG criteria
- Guideline — document the accessible contract for the component (roles, states, keyboard, focus, announcements)
- Audit — automated testing (axe, Vitest + RTL, Playwright) + manual SR verification
- Triage — violations go through a gatekeeper process: WCAG criterion, steps to reproduce, expected/actual, acceptance criteria
- Fix + regression test — layered tests lock in the fix
The open-source tools in this portfolio instrument each step. The internal guidelines, violation taxonomy, and decision log that drive the methodology live in a private vault.
packages/audit-panel— floating visual accessibility audit panelpackages/ux-widget— floating accessibility UX customization widget
packages/
audit-panel/ # Floating a11y audit panel
ux-widget/ # Floating a11y UX widget
docs/
index.html # Public toolkit page
portfolio-inventory.md # Full portfolio → toolkit scope map
npm install
npm test
npm run buildhttps://elizabeth1979.github.io/a11y-engineering-toolkit/ — for non-developers:
- Drag the bookmarklet to the bookmarks bar
- Or copy the bookmarklet into a browser bookmark
- Run the tool on any page
import {
initA11yAudit,
destroyA11yAudit,
} from "./packages/audit-panel/src/index.js";
initA11yAudit();
destroyA11yAudit();| Export | Description |
|---|---|
initA11yAudit(options?) |
Create and mount the panel. Options: { container: HTMLElement } |
destroyA11yAudit() |
Remove the panel and clean up overlays |
import {
initA11yWidget,
destroyA11yWidget,
} from "./packages/ux-widget/src/index.js";
initA11yWidget();
destroyA11yWidget();- Run
npm run build - The build copies public files into
docs/ - GitHub Pages serves the browser bundles
- Testers use the public page and do not need to build anything
a11y-engineering-toolkitis the umbrella repo and public entry pointa11y-expert-mcpstays its own repo and is linked as a toolkit module repoa11y-skillsstays its own repo as the canonical source for ARIA pattern instruction files
Not every repo in the portfolio needs to be physically merged here. The default is link first, merge later only if there is a real benefit.
Anything primarily about accessibility engineering should be represented here as one of:
- module
- workflow
- prompt or skill
- reference implementation
- docs
- research input
Uses Vitest + jsdom. Current tests cover the audit panel and UX widget packages plus build output validation.
MIT