본문으로 건너뛰기
cccskills
무료GitHub에 공개

reka-ui

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.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(54)

  • SKILL.md5.2 KB
  • components.md6.8 KB
  • components/accordion.md2.3 KB
  • components/alert-dialog.md3.4 KB
  • components/aspect-ratio.md411 B
  • components/avatar.md1.3 KB
  • components/calendar.md6.3 KB
  • components/checkbox.md1.4 KB
  • components/collapsible.md1.2 KB
  • components/combobox.md8.9 KB
  • components/config-provider.md455 B
  • components/context-menu.md9.3 KB
  • components/date-field.md2.7 KB
  • components/date-picker.md10.1 KB
  • components/date-range-field.md2.8 KB
  • components/date-range-picker.md10.4 KB
  • components/dialog.md3.2 KB
  • components/dropdown-menu.md10.0 KB
  • components/editable.md4.0 KB
  • components/focus-scope.md550 B
  • components/hover-card.md3.5 KB
  • components/label.md318 B
  • components/listbox.md5.0 KB
  • components/menubar.md10.1 KB
  • components/navigation-menu.md4.8 KB
  • components/number-field.md2.1 KB
  • components/pagination.md2.8 KB
  • components/pin-input.md1.5 KB
  • components/popover.md4.5 KB
  • components/presence.md62 B
  • components/primitive.md66 B
  • components/progress.md1.4 KB
  • components/radio-group.md1.9 KB
  • components/range-calendar.md6.1 KB
  • components/rating.md2.9 KB
  • components/scroll-area.md1.8 KB
  • components/select.md6.9 KB
  • components/separator.md474 B
  • components/slider.md2.2 KB
  • components/splitter.md2.6 KB
  • components/stepper.md3.2 KB
  • components/switch.md1.2 KB
  • components/tabs.md2.1 KB
  • components/tags-input.md3.7 KB
  • components/time-field.md85 B
  • components/toast.md3.7 KB
  • components/toggle-group.md1.5 KB
  • components/toggle.md694 B
  • components/toolbar.md2.6 KB
  • components/tooltip.md3.8 KB
  • components/tree.md3.7 KB
  • components/visually-hidden.md298 B
  • references/components.md6.9 KB
  • scripts/generate-components.ts19.0 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Reka UI

Unstyled, accessible Vue 3 component primitives. WAI-ARIA compliant. Previously Radix Vue.

Current version: v2.8.0 (January 2026)

When to Use

  • Building headless/unstyled components from scratch
  • Need WAI-ARIA compliant components
  • Using Nuxt UI, shadcn-vue, or other Reka-based libraries
  • Implementing accessible forms, dialogs, menus, popovers

For Vue patterns: use vue skill

Available Guidance

FileTopics
references/components.mdComponent index by category (Form, Date, Overlay, Menu, Data, etc.)
components/*.mdPer-component details (dialog.md, select.md, etc.)

Guides (see reka-ui.com): Styling, Animation, Composition, SSR, Namespaced, Dates, i18n, Controlled State, Inject Context, Virtualization, Migration

Loading Files

Consider loading these reference files based on your task:

DO NOT load all files at once. Load only what's relevant to your current task.

For styled Nuxt components built on Reka UI: use nuxt-ui skill

Key Concepts

ConceptDescription
asChildRender as child element instead of wrapper, merging props/behavior
Controlled/UncontrolledUse v-model for controlled, default* props for uncontrolled
PartsComponents split into Root, Trigger, Content, Portal, etc.
forceMountKeep element in DOM for animation libraries
VirtualizationOptimize large lists (Combobox, Listbox, Tree) with virtual scrolling
Context InjectionAccess component context from child components

Installation

// nuxt.config.ts (auto-imports all components)
export default defineNuxtConfig({
  modules: ['reka-ui/nuxt'],
})
import { RekaResolver } from 'reka-ui/resolver'
// vite.config.ts (with auto-import resolver)
import Components from 'unplugin-vue-components/vite'

export default defineConfig({
  plugins: [vue(), Components({ resolvers: [RekaResolver()] })],
})

Basic Patterns

<!-- Dialog with controlled state -->
<script setup>
import {
  DialogRoot,
  DialogTrigger,
  DialogPortal,
  DialogOverlay,
  DialogContent,
  DialogTitle,
  DialogDescription,
  DialogClose,
} from 'reka-ui'
const open = ref(false)
</script>

<template>
  <DialogRoot v-model:open="open">
    <DialogTrigger>Open</DialogTrigger>
    <DialogPortal>
      <DialogOverlay class="fixed inset-0 bg-black/50" />
      <DialogContent
        class="fixed left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 bg-white p-6 rounded"
      >
        <DialogTitle>Title</DialogTitle>
        <DialogDescription>Description</DialogDescription>
        <DialogClose>Close</DialogClose>
      </DialogContent>
    </DialogPortal>
  </DialogRoot>
</template>
<!-- Select with uncontrolled default -->
<SelectRoot default-value="apple">
  <SelectTrigger>
    <SelectValue placeholder="Pick fruit" />
  </SelectTrigger>
  <SelectPortal>
    <SelectContent>
      <SelectViewport>
        <SelectItem value="apple"><SelectItemText>Apple</SelectItemText></SelectItem>
        <SelectItem value="banana"><SelectItemText>Banana</SelectItemText></SelectItem>
      </SelectViewport>
    </SelectContent>
  </SelectPortal>
</SelectRoot>
<!-- asChild for custom trigger element -->
<DialogTrigger as-child>
  <button class="my-custom-button">Open</button>
</DialogTrigger>

Recent Updates (v2.6.0-v2.8.0)

  • New component: Rating (v2.8.0)
  • ScrollArea: Added "glimpse" scrollbar mode (v2.8.0)
  • PopperContent: Added hideShiftedArrow prop (v2.8.0)
  • TimeField: Added stepSnapping support (v2.8.0)
  • Breaking: weekStartsOn now locale-independent for date components (v2.8.0)
  • Virtualization: estimateSize accepts function for Listbox/Tree (v2.7.0)
  • Composables: useLocale, useDirection exposed (v2.6.0)
  • Select: disableOutsidePointerEvents prop on Content (v2.7.0)
  • Toast: disableSwipe prop (v2.6.0)

Resources


Token efficiency: ~350 tokens base, components.md index ~100 tokens, per-component ~50-150 tokens

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Audit and improve web accessibility following WCAG 2.2 guidelines. Use when asked to "improve accessibility", "a11y audit", "WCAG compliance", "screen reader support", "keyboard navigation", or "make accessible".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

hetari/sulaf172026년 9월 10일 업데이트

Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

hetari/sulaf172026년 9월 10일 업데이트

motion

무료

Use when adding animations with Motion Vue (motion-v) - provides motion component API, gesture animations, scroll-linked effects, layout transitions, and composables for Vue 3/Nuxt

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

hetari/sulaf172026년 9월 10일 업데이트

nuxt

무료

Nuxt full-stack Vue framework with SSR, auto-imports, and file-based routing. Use when working with Nuxt apps, server routes, useFetch, middleware, or hybrid rendering.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

hetari/sulaf172026년 9월 10일 업데이트

Use when working with Nuxt Content v3, markdown content, or CMS features in Nuxt - provides collections (local/remote/API sources), queryCollection API, MDC rendering, database configuration, NuxtStudio integration, hooks, i18n patterns, and LLMs integration

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

hetari/sulaf172026년 9월 10일 업데이트

nuxt-seo

무료

Nuxt SEO meta-module with robots, sitemap, og-image, schema-org. Use when configuring SEO, generating sitemaps, creating OG images, or adding structured data.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

hetari/sulaf172026년 9월 10일 업데이트

hetari의 스킬 모두 보기

이 스킬의 문제 신고