ropav

Vapor-native Vue 3 component library — accessible by default, styled with framework-agnostic CSS.
8,761 1
Install
npm install ropav
Latest Version:0.16.1
Vue:3
License:Apache-2.0
Last Updated:Oct 17, 2026
Links: GitHub  ·  npm
Maintainer: daopk

Ropav

A Vue 3 component library built on Vue Vapor, styled by @ropav/styles. Published on npm as ropav.

Documentation · Components · Patterns · Theming · Storybook

Writing this with a coding agent: point it at AGENTS.md, which ships in the package, or at llms-full.txt for every component at once.

Ropav is a port of HeroUI v3 to Vue Vapor: the style layer is vendored from @heroui/styles@3.2.4, the behaviour layer is re-implemented from React Aria.

Packages

Package Description
packages/ropav The component library
packages/styles CSS + tv() variants (@ropav/styles)
packages/docs The documentation site
packages/storybook Storybook — every component, documented here or not
packages/testing Shared test harness (jsdom + Playwright browser)

Calendar systems

The calendars, fields and pickers build Gregorian dates whatever calendar the locale asks for — a deliberate default, and about bundle weight rather than correctness. An app serving a locale that uses another system opts in:

<script setup lang="ts">
import { DatePicker, createCalendar } from "ropav";
</script>

<template>
  <DatePicker :create-calendar="createCalendar" />
</template>

Why it works that way, and how to opt in for only some systems, is in Calendar systems.

Development

Requires Node.js 22+ and pnpm 10+.

pnpm i --hoist   # install
pnpm dev         # Storybook on http://127.0.0.1:6006
pnpm build       # build every package
pnpm lint        # oxlint
pnpm typecheck   # vue-tsc
pnpm test        # Vitest — jsdom + browser (needs `playwright install chromium` once)

License

Apache License 2.0 — see LICENSE, which keeps the original copyright.

Related Packages

@mindedge/vuetify-player

Accessible, localized, full featured media player with Vuetifyjs

5,386 3
vue-split-carousel

a carousel component for vue, display several carousel-item in carousel containe...

2,846 3

Version History

Version Released License
0.16.1 Apache-2.0
0.16.0 Apache-2.0
0.15.1 Apache-2.0
0.15.0 Apache-2.0
0.14.0 Apache-2.0