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
- ๐งช๏ธ 1500+ 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 ๐บ๐ฆ


