Behavior only
Each controller owns the hard part — ARIA roles and state, keyboard interaction, focus management — and nothing else.
Headless Stimulus UI for Rails
Behavior-only UI primitives for Rails. Every control ships its ARIA state, keyboard interaction, and focus management as data-*-driven Stimulus controllers — and no CSS, so the look stays entirely yours.
Or press Cmd+K / Ctrl+K to open it from anywhere.
$ bundle add stimeo-ui $ bin/rails generate stimeo:install ✓ controllers wired · zero CSS shipped
Why headless?
Each controller owns the hard part — ARIA roles and state, keyboard interaction, focus management — and nothing else.
Components implement the matching WAI-ARIA APG pattern and the related WCAG 2.2 AA criteria, so correctness is the starting point.
No bundled CSS and no visual lock-in. Your styles read the ARIA and data attributes the controllers expose.
The only runtime dependency is @hotwired/stimulus. The lone exception, @floating-ui/dom for dynamic positioning, is added only if you opt in.
See it run
Add Stimeo UI to a Rails app in two commands. Accessible by default, Turbo-resilient, and styled entirely by you.