Craft accessible web apps with Vue
An open-source library with unstyled, primitive components, accompanied by a variety of examples & use cases ready to be integrated into your projects.

October 2024
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
29 | 30 | 1 | 2 | 3 | 4 | 5 |
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 | 1 | 2 |
3 | 4 | 5 | 6 | 7 | 8 | 9 |
- composables
- components
- Home
- app.vue
- nuxt.config.ts
Directory Structure
Accessibility out of the box.
Supports assistive technology

WAI-ARIA compliant
Keyboard navigation
Focus management
Screen reader support
Save time. Ship faster.
40+ Primitive Components
Developer Experience First.
Unstyled, Customizable, Familiar API
<script setup lang="ts">
import { AccordionRoot, AccordionItem } from 'reka-ui'
</script>
<template>
<AccordionRoot v-model="controlRef">
<!-- css -->
<AccordionItem class="AccordionItem" />
<!-- tailwind -->
<AccordionItem class="bg-white px-4 py-2" />
</AccordionRoot>
</template>
Ready for an international audience
RTL support, Locale, Numbering System

500k+
Monthly downloads
100+
Contributors
3k+
GitHub Stars