A UI library with Open Architecture for Vue.js 3 and Nuxt.js 3 / 4, powered by Storybook v10 and Tailwind CSS v4.
With Vueless UI, youβre free to:
- πͺοΈ Customize any component
- π Copy and extend existing ones
- π§± Build your own from scratch
- π Document it all seamlessly in Storybook
Documentation | UI Components | Theme Builder | About
- π§© 65+ crafted UI components (including range date picker, multi-select, and nested table)
- β¨ Open Architecture lets you customize, copy, extend, and create your own components
- π Built-in Storybook support
- πͺ© Theme Builder for runtime theme customization
- π Beautiful default UI theme
- π Unstyled mode
- π Light and dark mode
- 𧬠Design tokens powered by CSS variables
- βοΈ Server-side rendering (SSR)
- π Internationalization (i18n)
- βΏοΈ Accessibility (a11y)
- πΌοΈ Inline SVG icons
- πͺ Auto component imports (as you use them)
- π§Ώ Uncompiled source in npm for better DX
- π§ͺοΈ 1400+ unit tests ensuring consistent logic
- π‘οΈ Full TypeScript support with type safety
No setup, no hacks β just a fully functional Storybook preset ready to test your Vueless UI design system out of the box.
Customize colors, rounding, and typography at runtime, generate full palettes, and export a ready-to-use theme to your project.
Try Vueless UI Theme Builder π
To get started with Vueless UI, simply paste the following code into your terminal:
npm create vueless@latestThis command guides you through a few setup options, then generates a new scaffolded Vue + Vueless UI project with the complete application structure.
- Install
vuelessUI library packages.
npm install vueless
npx vueless init- In the file where you create the Vue application, add the following code:
import { createApp } from 'vue';
import { createVueless } from "vueless";
import App from './App.vue';
const vueless = createVueless();
createApp(App).use(vueless).mount('#app');- Import Tailwind CSS and Vueless at the top of the main CSS file.
@import "tailwindcss";
@import "vueless";- Add Vite plugins.
import { Vueless, TailwindCSS, UnpluginComponents } from "vueless/plugin-vite";
export default defineConfig({
plugins: [
...
Vueless(),
TailwindCSS(),
UnpluginComponents(),
],
...
})- Install Vueless Nuxt module.
npm install @vueless/nuxt
npx vueless init- Register
@vueless/nuxtinto the Nuxt config modules section.
export default defineNuxtConfig({
modules: [
'@vueless/nuxt'
],
...
})- Import Tailwind CSS and Vueless at the top of the main CSS file.
@import "tailwindcss";
@import "vueless";- @vueless/storybook - Storybook preset for Vueless UI component library (docs).
- @vueless/nuxt - Vueless UI module for Nuxt.js (docs).
- create-vueless - CLI tool to quickly start a Vueless UI project from a template (docs).
- vueless-quickstart - Vue + Vueless UI + JavaScript project template.
- vueless-quickstart-ts - Vue + Vueless UI + TypeScript project template.
- We encourage you to contribute to Vueless! Please check out the contributing to Vueless for guidelines.
- Trying to report a possible security vulnerability in Vueless? Please check out our security policy for guidelines.
- Everyone interacting in Vueless and its sub-projects' codebases, issue trackers, chats, and mailing lists is expected to follow our code of conduct rules.
Vueless is released under the MIT License.
From Ukrainians to a Peaceful World πΊπ¦


