@moduix/vue

Accessible Vue UI components built on Ark UI and styled with CSS Modules. 80+ components with the same API for React and Solid.
425 29
Install
npm install @moduix/vue
Latest Version:3.0.1
Vue:3
License:MIT
Last Updated:Oct 21, 2026
Links: GitHub  ·  npm
Maintainer: blinks44

moduix banner

npm License: MIT TypeScript

@moduix/vue

Vue components built on Ark UI, styled with CSS Modules. Compose components from flat named parts using native Vue props and events.

Quick start · Components · Styling

Install

Start from an existing application using Vue 3.5 or later in the 3.x line.

Install moduix and its matching Ark UI peer dependency:

pnpm add @moduix/vue @ark-ui/vue

Import components from subpaths such as @moduix/vue/accordion; there is no package-root export. Only the optional Chart integration requires an additional peer: pnpm add @tanstack/charts.

Add styles

Import the reset and foundation once in your application entry point:

import '@moduix/vue/reset.css';
import '@moduix/vue/style.css';

If your application already provides an equivalent reset, omit reset.css. The foundation supplies shared tokens and base styles; component imports load their own CSS Modules.

Use a component

<script setup lang="ts">
import {
  Accordion,
  AccordionItem,
  AccordionItemBody,
  AccordionItemContent,
  AccordionItemIndicator,
  AccordionItemTrigger,
} from '@moduix/vue/accordion';
</script>

<template>
  <Accordion :default-value="['first']">
    <AccordionItem value="first">
      <AccordionItemTrigger>
        What is moduix?
        <AccordionItemIndicator />
      </AccordionItemTrigger>
      <AccordionItemContent>
        <AccordionItemBody>
          A component library built on accessible Ark UI primitives.
        </AccordionItemBody>
      </AccordionItemContent>
    </AccordionItem>
  </Accordion>
</template>

The family name is the root component. Each additional part is a separate family-prefixed export. The setup is working when the trigger is styled and the panel opens with keyboard and pointer input.

Customize

Use class on the root or a named part, stable data-slot hooks, and Ark state attributes for application styles. Override shared CSS tokens or component variables for more focused changes.

The optional presets are dense, soft, and contrast. See Themes for imports and activation, and Tokens for available CSS properties.

Own the source

Configure components.json and aliases with the registry setup, then add a component:

pnpm dlx shadcn@latest add @moduix-vue/accordion

The CLI copies native Vue source, styles, and dependencies into your project. Follow Quick Start to connect the generated foundation stylesheet. The same namespace also installs blocks, for example @moduix-vue/login-simple.

Compatibility

The package is ESM-only and ships JavaScript targeting ES2023. Use an application bundler that supports package CSS imports. See the framework guides for entry files, aliases, and SSR integration.

Links

License

MIT

Related Packages

@moduix/vue-tailwind

Accessible Vue UI components built on Ark UI and styled with Tailwind CSS v4. 80...

180 29
@surstromming/popover

Panel anchored under a trigger; closes on outside click and Escape.

1,481 0
@surstromming/dialog

Modal dialog, with an alert-dialog mode and sheets on the screen's edges.

1,382 0
@surstromming/design

Everything related to design system, including colors, typography, and spacing.

1,363 0

Version History

Version Released Vue License
3.0.1 ^3.5.0 MIT
3.0.0 ^3.5.0 MIT
Pre-releases (1)
Version Released License
0.0.0-stage