
Naive UI
A clean, fast, and highly customizable Vue 3 component library. 80+ components with complete TypeScript coverage and zero CSS file imports.

Overview
Naive UI is a modern, clean Vue 3 component library built by Tusen AI (图森未来). Celebrated for its complete TypeScript type safety and zero-CSS-file configuration (powered by CSS-in-JS v-bind), it provides a frictionless developer experience.
Key Features
- 80+ Polished Components: Extensive collection of buttons, trees, data tables, and modal dialogs.
- Zero CSS Import Overhead: Scoped styles are injected dynamically on demand, eliminating bulky CSS imports.
- Complete TypeScript Typing: Strict type definitions for props, slots, and events out-of-the-box.
- Fine-Grained Theme Overrides: Effortlessly override component color tokens via the
NConfigProvider.
Installation & Quick Start
npm install naive-ui<template>
<n-button type="primary">Naive Action</n-button>
</template>
<script setup>
import { NButton } from 'naive-ui';
</script>Why Choose Naive UI?
- Best for: Modern Vue 3 + Vite applications where developer ergonomics, type safety, and clean aesthetics matter.
- Not suitable for: SSR-heavy setups with strict constraints against runtime CSS-in-JS injections.
Comments & Discussion
No comments yet. Be the first to share your experience or thoughts!
Related libraries
Curated by category & stacknxui (Vue)
A collection of 230+ beautiful animated Vue 3 components built with Tailwind CSS v4 and motion-v. Copy, paste, and ship with Nuxt 4 and shadcn-vue.
8bitcn/ui
Accessible retro 8-bit components and blocks built on shadcn/ui and Tailwind CSS. Open source, copy-paste, and crafted for modern React apps.
Astryx (Meta)
Meta's open source enterprise design system and React 19 component library with 170+ accessible components, StyleX integration, and agent-ready tooling.