Skip to content
Engineering Lab

02 / 20Design systems & a11y

Accessible Components

Combobox, dialog, tabs, menu, toast and slider, built from scratch to the WAI-ARIA patterns.

stirling.lab/a11y-components Live demo
Loading demo…

What to notice

  • Full keyboard support per the ARIA Authoring Practices for each widget
  • Focus trapping and restoration in the dialog, roving tabindex in menus and tabs
  • Live regions for toasts and combobox result counts
  • An on-page 'keyboard trace' that shows every key event and focus move

How it's built

  • Each widget is a headless hook plus a styled view, so behavior and visuals evolve separately.
  • No ARIA is added without the matching keyboard behavior: wrong ARIA is worse than none.

Hand-built in React 19 + TypeScript, with no UI or chart libraries.