Skip to content

vuelessjs/vueless

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

vueless-examples.png

Vueless UI

Vueless is an open-source UI library and design system framework for Vue.js 3 and Nuxt.js 3, built on top of Tailwind CSS v4.

It’s completely styleless, allowing you to extend or override default styles without modifying the components themselves β€” only your custom styles are included in the final build.

Vueless is simple enough for everyday use and powerful enough for advanced scenarios, making it ideal for quickly building beautiful UIs in minutes or developing a fully customized corporate UI library that strictly follows your design guidelines.

Documentation | UI Components | Website

Key features

  • 🧩 65+ UI components (including range date picker, multi-selects, and nested table)
  • πŸ“˜ Built-in Storybook support
  • 🌈 Beautiful, modern default UI theme
  • πŸŒ— Light and dark mode support
  • πŸŒ€ Unstyled mode
  • 🎨️ Flexible color palettes
  • πŸŽ›οΈ Runtime theme and color switching
  • 🧬 Design tokens powered by CSS variables
  • ✨ Powerful yet simple styling customization system
  • 🌍 Internationalization (i18n)
  • ♿️ Accessibility (a11y)
  • βš™οΈ Server-side rendering (SSR) friendly
  • πŸ–ΌοΈ 1000+ built-in SVG icons
  • πŸ›‘οΈ Full TypeScript support with type safety

Advanced Features

  • 🧰 Copy and extend existing components
  • 🧱 Create your own components
  • πŸ”§οΈ Define default values for props
  • πŸ”©οΈ Add or hide props to components
  • 🧿 npm package ships full source without TypeScript transpilation for better DX.

Quick Start (Vue)

  1. Install vueless UI library packages.
npm install vueless
npx vueless init
  1. 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');
  1. Import Tailwind CSS and Vueless at the top of the main CSS file.
@import "tailwindcss";
@import "vueless";
  1. Add Vite plugins.
import { Vueless, UnpluginComponents } from "vueless/plugin-vite";

export default defineConfig({
  plugins: [
    ...
    Vueless(),
    UnpluginComponents(),
  ],
  ...
})

Quick Start (Nuxt)

  1. Install Vueless Nuxt module.
npm install @vueless/nuxt
npx vueless init
  1. Register @vueless/nuxt into the Nuxt config modules section.
export default defineNuxtConfig({
  modules: [
    '@vueless/nuxt'
  ],
  ...
})
  1. Import Tailwind CSS and Vueless at the top of the main CSS file.
@import "tailwindcss";
@import "vueless";

Contributing

  • 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.

License

Vueless is released under the MIT License.