From frontend-skills
Enforces ARIA accessibility via PostToolUse hooks — labels, keyboard handlers, widget attributes, and Playwright AXE setup. Use for WCAG 2.1 AA compliance or accessibility testing.
How this skill is triggered — by the user, by Claude, or both
Slash command
/frontend-skills:setup-accessibilitysrc/components/**/*.tsxThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
- **`<img>` without `alt`** -- use `alt=""` for decorative img
<img> without alt -- use alt="" for decorative imgonClick on <div>/<span> -- needs role + tabIndex + onKeyDown/onKeyUprole="combobox" needs aria-expanded + aria-controls, role="dialog" needs aria-label/aria-labelledby, role="tablist" needs child role="tab"Escape hatch: // allow: a11y-skip [reason]
Interactive components ONE pattern -- never both:
Pattern A: Container clickable -- no interactive children.
<ListCard onClick={handleSelect}>
<Avatar src={user.avatar} />
<Text>{user.name}</Text>
<ChevronRightIcon /> {/* visual indicator only, not a button */}
</ListCard>
Pattern B: Children interactive -- container not clickable.
<ListCard>
<Avatar src={user.avatar} />
<Text>{user.name}</Text>
<DropdownMenu>
<DropdownMenuTrigger asChild>
<Button variant="ghost" size="icon"><MoreVerticalIcon /></Button>
</DropdownMenuTrigger>
</DropdownMenu>
</ListCard>
Why: ambiguous click targets, event bubbling bugs, screen readers can't convey interaction model, touch targets overlap on mobile.
prefers-reduced-motion respected for animationsforced-colors / high-contrast mode: use currentcolor for SVG fillsInitial setup (install, AXE fixture, hook config): see SETUP.md.
npx claudepluginhub redpanda-data/ui-harness --plugin frontend-skillsAudits and implements frontend accessibility for WCAG 2.2 AA compliance, ARIA roles/attributes, keyboard navigation, focus management, screen readers, and automated testing.
Runs WCAG accessibility checks using axe-core with Playwright for E2E tests and jest-axe for component tests. Includes keyboard navigation and ARIA testing.
Implements WCAG 2.1/2.2 compliance, ARIA patterns, keyboard navigation, focus management, and accessibility testing for web components.