>
react-aria
Build accessible UI components with React Aria. Use when creating accessible form controls, implementing ARIA patterns, building design systems, or fixing accessibility issues.
#react-aria#accessibility#a11y#design-system#components
terminal-skillsv1.0.0
Works with:claude-codeopenai-codexgemini-clicursor
Usage
$
✓ Installed react-aria v1.0.0
Getting Started
- Install the skill using the command above
- Open your AI coding agent (Claude Code, Codex, Gemini CLI, or Cursor)
- Reference the skill in your prompt
- The AI will use the skill's capabilities automatically
Example Prompts
- "Review the open pull requests and summarize what needs attention"
- "Generate a changelog from the last 20 commits on the main branch"
Documentation
Overview
React Aria (Adobe) provides accessible UI primitives for React. Handles keyboard navigation, screen reader announcements, focus management, and ARIA attributes — you provide styling.
Instructions
Step 1: Accessible Components
tsx
import { Button, Label, ListBox, ListBoxItem, Popover, Select, SelectValue } from 'react-aria-components'
export function SelectField({ label, items, onSelectionChange }) {
return (
<Select onSelectionChange={onSelectionChange}>
<Label>{label}</Label>
<Button><SelectValue /><span aria-hidden="true">▼</span></Button>
<Popover>
<ListBox>
{items.map(item => (
<ListBoxItem key={item.id} id={item.id}>{item.name}</ListBoxItem>
))}
</ListBox>
</Popover>
</Select>
)
}
// Arrow keys navigate, Enter selects, Escape closes
// Screen reader: announces value, role, option count
Step 2: Focus Management
tsx
import { FocusScope } from 'react-aria'
function ModalDialog({ children, onClose }) {
return (
<FocusScope contain restoreFocus autoFocus>
<div role="dialog" aria-modal="true">
{children}
<button onClick={onClose}>Close</button>
</div>
</FocusScope>
)
}
Step 3: Custom Hooks
tsx
import { useButton } from 'react-aria'
import { useRef } from 'react'
function CustomButton(props) {
const ref = useRef(null)
const { buttonProps } = useButton(props, ref)
return <button {...buttonProps} ref={ref}>{props.children}</button>
}
Guidelines
- React Aria = behavior + accessibility. You control styling (Tailwind, CSS-in-JS).
react-aria-components: pre-built accessible components with render props.- Individual hooks (
useButton,useTextField) for fully custom designs. - FocusScope traps focus in modals — required for WCAG 2.1.
- Test with VoiceOver (Mac), NVDA (Windows), keyboard-only.
Information
- Version
- 1.0.0
- Author
- terminal-skills
- Category
- Development
- License
- Apache-2.0