What problem does it solve?
Interfaces often ship with invisible focus rings, unlabeled icon buttons, keyboard-inaccessible widgets, and forms that screen readers cannot announce, blocking users who rely on assistive technology. This Skill provides concrete principles, code patterns, and a structured review format for finding and fixing those accessibility defects in product UI code.
Core Features & Use Cases
- Keyboard and Focus Engineering: Implements
:focus-visible rings, skip links, roving tabindex, focus trapping with inert, and ARIA APG keyboard patterns for tabs, menus, dialogs, and comboboxes.
- Semantics, ARIA, and Screen Readers: Enforces native-elements-first rules, accessible names, landmarks, live regions (
role="status" / role="alert"), alt text by purpose, and correct SVG handling.
- Forms, Hit Areas, and Motion: Covers labels,
autocomplete tokens, error announcement with aria-invalid/aria-describedby, WCAG 2.5.8 target sizes with pseudo-element hit-area expansion, prefers-reduced-motion, and 200% zoom/reflow survival.
- Use Case: When a user asks to "make this modal accessible" or reports that a menu is not keyboard navigable, the Skill walks the interface as a keyboard-only and screen-reader user, then outputs findings grouped by principle with severity, location, before/after code, and a Block/Needs changes/Approve verdict.
Quick Start
Review the dialog component in src/Dialog.tsx for accessibility issues and fix any keyboard, focus, and ARIA problems you find.