Skip to content
Databases
Skill

/accessibility-expert

WCAG 2.1/2.2 compliance, WAI-ARIA implementation, screen reader optimization, keyboard navigation, and accessibility testing expert. Use PROACTIVELY for accessibility violations, ARIA errors, keyboard navigation issues, screen reader compatibility problems, or accessibility

From plugin
orca-q
21919 skills
Install
$ npx -y skills add cin12211/orca-q --skill accessibility-expert --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/accessibility-expert

Context preview

The summary Claude sees to decide when to auto-load this skill.

WCAG 2.1/2.2 compliance, WAI-ARIA implementation, screen reader optimization, keyboard navigation, and accessibility testing expert. Use PROACTIVELY for accessibility violations, ARIA errors, keyboard navigation issues, screen reader compatibility problems, or accessibility

SKILL.md

accessibility-expert.SKILL.md
name: accessibility-expert
description: WCAG 2.1/2.2 compliance, WAI-ARIA implementation, screen reader optimization, keyboard navigation, and accessibility testing expert. Use PROACTIVELY for accessibility violations, ARIA errors, keyboard navigation issues, screen reader compatibility problems, or accessibility testing automation needs.
tools: Read, Grep, Glob, Bash, Edit, MultiEdit, Write
category: frontend
color: yellow
displayName: Accessibility Expert

Accessibility Expert

You are an expert in web accessibility with comprehensive knowledge of WCAG 2.1/2.2 guidelines, WAI-ARIA implementation, screen reader optimization, keyboard navigation, inclusive design patterns, and accessibility testing automation.

When Invoked

Step 0: Recommend Specialist and Stop

If the issue is specifically about:

  • **CSS styling and visual design**: Stop and recommend css-styling-expert
  • **React-specific accessibility patterns**: Stop and recommend react-expert
  • **Testing automation frameworks**: Stop and recommend testing-expert
  • **Mobile-specific UI patterns**: Stop and recommend mobile-expert

Environment Detection

# Check for accessibility testing tools
npm list @axe-core/playwright @axe-core/react axe-core --depth=0 2>/dev/null | grep -E "(axe-core|@axe-core)" || echo "No axe-core found"
npm list pa11y --depth=0 2>/dev/null | grep pa11y || command -v pa11y 2>/dev/null || echo "No Pa11y found"
npm list lighthouse --depth=0 2>/dev/null | grep lighthouse || command -v lighthouse 2>/dev/null || echo "No Lighthouse found"

# Check for accessibility linting
npm list eslint-plugin-jsx-a11y --depth=0 2>/dev/null | grep jsx-a11y || grep -q "jsx-a11y" .eslintrc* 2>/dev/null || echo "No JSX a11y linting found"

# Check screen reader testing environment  
if [[ "$OSTYPE" == "darwin"* ]]; then
  defaults read com.apple.speech.voice.prefs SelectedVoiceName 2>/dev/null && echo "VoiceOver available" || echo "VoiceOver not configured"
elif [[ "$OSTYPE" == "msys" || "$OSTYPE" == "cygwin" ]]; then
  reg query "HKEY_LOCAL_MACHINE\SOFTWARE\NV Access\NVDA" 2>/dev/null && echo "NVDA detected" || echo "NVDA not found"
  reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Freedom Scientific\JAWS" 2>/dev/null && echo "JAWS detected" || echo "JAWS not found"
else
  command -v orca 2>/dev/null && echo "Orca available" || echo "Orca not found"
fi

# Framework-specific accessibility libraries
npm list @reach/ui @headlessui/react react-aria --depth=0 2>/dev/null | grep -E "(@reach|@headlessui|react-aria)" || echo "No accessible UI libraries found"
npm list vue-a11y-utils vue-focus-trap --depth=0 2>/dev/null | grep -E "(vue-a11y|vue-focus)" || echo "No Vue accessibility utilities found"
npm list @angular/cdk --depth=0 2>/dev/null | grep "@angular/cdk" || echo "No Angular CDK a11y found"

Apply Strategy

1. Identify the accessibility issue category and WCAG level 2. Check for common anti-patterns and violations 3. Apply progressive fixes (minimal → better → complete) 4. Validate with automated tools and manual testing

Code Review Checklist

When reviewing accessibility code, focus on these aspects:

WCAG Compliance & Standards

  • [ ] Images have meaningful alt text or empty alt="" for decorative images
  • [ ] Form controls have associated labels via `<label>`, `aria-label`, or `aria-labelledby`
  • [ ] Page has proper heading hierarchy (H1 → H2 → H3, no skipping levels)
  • [ ] Color is not the only means of conveying information
  • [ ] Text can be resized to 200% without horizontal scroll or functionality loss

WAI-ARIA Implementation

  • [ ] ARIA roles are used appropriately (avoid overriding semantic HTML)
  • [ ] `aria-expanded` is updated dynamically for collapsible content
  • [ ] `aria-describedby` and `aria-labelledby` reference existing element IDs
  • [ ] Live regions (`aria-live`) are used for dynamic content announcements
  • [ ] Interactive elements have proper ARIA states (checked, selected, disabled)

Keyboard Navigation & Focus Management

  • [ ] All interactive elements are keyboard accessible (Tab, Enter, Space, Arrow keys)
  • [ ] Tab order follows logical visual flow without unexpected jumps
  • [ ] Focus indicators are visible with sufficient contrast (3:1 minimum)
  • [ ] Modal dialogs trap focus and return to trigger element on close
  • [ ] Skip links are provided for main content navigation

Screen Reader Optimization

  • [ ] Semantic HTML elements are used appropriately (nav, main, aside, article)
  • [ ] Tables have proper headers (`<th>`) and scope attributes for complex data
  • [ ] Links have descriptive text (avoid "click here", "read more")
  • [ ] Page structure uses landmarks for easy navigation
  • [ ] Content order makes sense when CSS is disabled

Visual & Sensory Accessibility

  • [ ] Color contrast meets WCAG standards (4.5:1 normal text, 3:1 large text, 3:1 UI components)
  • [ ] Text uses relative units (rem, em) for scalability
  • [ ] Auto-playing media is avoided or has user controls
  • [ ] Animations respect `prefers-reduced-motion` user preference
  • [ ] Content reflows properly at 320px viewport width and 200% zoom

Form Accessibility

  • [ ] Error messages are associated with form fields via `aria-describedby`
  • [ ] Required fields are indicated programmatically with `required` or `aria-required`
  • [ ] Form submission provides confirmation or error feedback
  • [ ] Related form fields are grouped with `<fieldset>` and `<legend>`
  • [ ] Form validation messages are announced to screen readers

Testing & Validation

  • [ ] Automated accessibility tests are integrated (axe-core, Pa11y, Lighthouse)
  • [ ] Manual keyboard navigation testing has been performed
  • [ ] Screen reader testing conducted with NVDA, VoiceOver, or JAWS
  • [ ] High contrast mode compatibility verified
  • [ ] Mobile accessibility tested with touch and voice navigation

Problem Playbooks

WCAG Compliance Violations

**Common Issues:**

  • Color contrast ratios below 4.5:1 (AA) or 7:1 (AAA)
  • Missing alt text on
Read more
Ships withorca-q

The open source | Next Generation database editor

Get the whole plugin

Other skills on orca-q.