reka-ui

Installation
SKILL.md

Reka UI

Unstyled, accessibility-first Vue.js component library. Zero styles, WAI-ARIA compliant, keyboard navigation, and focus management built in.

npm install reka-ui

Core Patterns

Anatomy: Root → Trigger → Portal → Content. Import named parts from reka-ui. Namespaced: import { Dialog } from 'reka-ui/namespaced'<Dialog.Root>, <Dialog.Trigger>, etc.

Styling: Target data-state, data-side, data-align, data-disabled, data-highlighted. CSS: .Item[data-state="open"] {}. Tailwind: data-[state=open]:border-b-2. Teleported elements (portals) need :deep() in scoped styles.

asChild: Merges behavior onto the child element instead of rendering the default element. Use to render a custom element or compose multiple primitives.

State: Uncontrolled = default-value prop. Controlled = v-model (or :model-value + @update:model-value).

Animation: CSS keyframes on data-state (Reka suspends unmount during exit), Vue <Transition>, or Motion Vue (motion-v) with AnimatePresence.

Related skills
Installs
10
First Seen
Feb 22, 2026