Headless Stimulus UI for Rails

Breathe life into your HTML.

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.

taiyaky/stimeo-ui 100+ components alpha 0.x
running · live demo stimeo--command-palette

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?

The hard parts, solved. The look, left to you.

Behavior only

Each controller owns the hard part — ARIA roles and state, keyboard interaction, focus management — and nothing else.

Accessible by default

Components implement the matching WAI-ARIA APG pattern and the related WCAG 2.2 AA criteria, so correctness is the starting point.

Your design system

No bundled CSS and no visual lock-in. Your styles read the ARIA and data attributes the controllers expose.

Zero extra dependencies

The only runtime dependency is @hotwired/stimulus. The lone exception, @floating-ui/dom for dynamic positioning, is added only if you opt in.

Ship behavior. Keep your design system.

Add Stimeo UI to a Rails app in two commands. Accessible by default, Turbo-resilient, and styled entirely by you.