All skills
onmax avatar

/reka-ui

@1059cab official
by Maxonmax/nuxt-skills715 stars
38

Use when building with Reka UI (headless Vue components) - provides component API, accessibility patterns, composition (asChild), controlled/uncontrolled state, virtualization, and styling integration. Formerly Radix Vue.

Use this Skill: https://skilld.dev/gh/onmax/nuxt-skills/reka-ui

This session only. Nothing lands on disk.

componentscombobox.md

≈1.3k tokens on demand. Your agent reads this file only when SKILL.md points to it.

Combobox

Searchable dropdown with filtering

Parts: ComboboxRoot, ComboboxInput, ComboboxAnchor, ComboboxTrigger, ComboboxContent, ComboboxViewport, ComboboxItem, ComboboxItemIndicator, ComboboxGroup, ComboboxLabel, ComboboxEmpty, ComboboxSeparator, ComboboxArrow, ComboboxPortal, ComboboxCancel, ComboboxVirtualizer

ComboboxRoot

Props

Prop Type Default
as AsTag | Component "div"
asChild boolean -
defaultOpen boolean -
defaultValue AcceptableValue | AcceptableValue[] -
dir "ltr" | "rtl" -
disabled boolean -
displayValue ((val: AcceptableValue) => string) -
filterFunction ((val: string[] | number[] | false[] | true[] |... -
modelValue AcceptableValue | AcceptableValue[] -
multiple boolean -
name string -
open boolean -
resetSearchTermOnBlur boolean true
resetSearchTermOnSelect boolean true
searchTerm string -
selectedValue AcceptableValue -

Emits

Event Payload
update:modelValue [value: AcceptableValue]
update:open [value: boolean]
update:searchTerm [value: string]
update:selectedValue [value: AcceptableValue]

Slots

Slot Type
open boolean
modelValue AcceptableValue | AcceptableValue[]

ComboboxInput

Props

Prop Type Default
as AsTag | Component "input"
asChild boolean -
autoFocus boolean -
disabled boolean -
type string "text"

ComboboxAnchor

Props

Prop Type Default
as AsTag | Component "div"
asChild boolean -

ComboboxTrigger

Props

Prop Type Default
as AsTag | Component "button"
asChild boolean -
disabled boolean -

ComboboxContent

Props

Prop Type Default
align "start" | "center" | "end" -
alignOffset number -
arrowPadding number -
as AsTag | Component "div"
asChild boolean -
avoidCollisions boolean -
bodyLock boolean -
collisionBoundary Element | (Element | null)[] | null -
collisionPadding number | Partial<Record<"top" | "right" | "bott... -
disableOutsidePointerEvents boolean -
dismissable boolean -
forceMount boolean -
hideWhenDetached boolean -
position "inline" | "popper" -
prioritizePosition boolean -
side "top" | "right" | "bottom" | "left" -
sideOffset number -
sticky "partial" | "always" -
updatePositionStrategy "always" | "optimized" -

Emits

Event Payload
escapeKeyDown [event: KeyboardEvent]
focusOutside [event: FocusOutsideEvent]
interactOutside [event: PointerDownOutsideEvent | FocusOutsideE...
pointerDownOutside [event: PointerDownOutsideEvent]

ComboboxViewport

Props

Prop Type Default
as AsTag | Component "div"
asChild boolean -
nonce string -

ComboboxItem

Props

Prop Type Default
as AsTag | Component "div"
asChild boolean -
disabled boolean -
value* AcceptableValue -

Emits

Event Payload
select [event: SelectEvent<AcceptableValue>]

ComboboxItemIndicator

Props

Prop Type Default
as AsTag | Component "span"
asChild boolean -

ComboboxGroup

Props

Prop Type Default
as AsTag | Component "div"
asChild boolean -

ComboboxLabel

Props

Prop Type Default
as AsTag | Component "div"
asChild boolean -
for string -

ComboboxEmpty

Props

Prop Type Default
as AsTag | Component "div"
asChild boolean -

ComboboxSeparator

Props

Prop Type Default
as AsTag | Component "div"
asChild boolean -

ComboboxArrow

Props

Prop Type Default
as AsTag | Component "svg"
asChild boolean -
height number 5
width number 10

ComboboxPortal

Props

Prop Type Default
disabled boolean -
forceMount boolean -
to string | HTMLElement -

ComboboxCancel

Props

Prop Type Default
as AsTag | Component "button"
asChild boolean -

Source: SKILL.md on GitHub

1 alert10d4 checks · Risk CRITICAL
  • Gen Agent Trust Hub10d

    This skill provides documentation and API references for the Reka UI library. It includes a utility script to synchronize documentation with the official GitHub repository, which presents a surface for indirect prompt injection if the external source were compromised.

  • Socket10d

    No alerts

  • Snyk10d

    Risk: LOW · No issues

  • Runlayer7mo

    54 files scanned · No issues

Signed by skilld at 1059cab. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 2 days ago.

Activeupdated 8 months ago
  • Vue
  • Nuxt
  • reka-ui
  • components
  • headless
  • accessible
  • aria
  • forms
  • dialogs

README badge

README badge for onmax/nuxt-skills/reka-ui

Unstyled, WAI-ARIA compliant Vue 3 component primitives with support for controlled/uncontrolled state, composition patterns, and virtualization. Use when building headless components from scratch or integrating with Reka-based libraries like Nuxt UI or shadcn-vue.

Generated from the current SKILL.md.

Does Reka UI include styling?
No. Reka UI provides unstyled, WAI-ARIA compliant component primitives. You apply styling yourself or use a styled wrapper library like Nuxt UI or shadcn-vue.
Can I use Reka UI with Nuxt?
Yes. Install the `reka-ui/nuxt` module in nuxt.config.ts for auto-imports of all components, or use the unplugin-vue-components resolver in a standard Vite setup.
How do I control component state?
Use `v-model:open` or `v-model` for controlled state, or `default*` props (like `default-value`) for uncontrolled state.
Does this skill cover styled component libraries built on Reka?
For Nuxt UI and other styled Reka-based components, use the nuxt-ui skill instead. This skill focuses on the unstyled primitives.
What is the `asChild` prop?
It merges the component's behavior and props onto a child element instead of wrapping it, letting you use your own custom element while maintaining accessibility and state management.

Generated from the current SKILL.md. These answers refresh after source changes.