Nuxt UI is a comprehensive Vue component library built for the Nuxt ecosystem, providing over 125 production-ready, WAI-ARIA compliant components for building modern web applications. The library offers a complete design system with Tailwind CSS theming, supporting dark mode, custom color palettes, semantic color aliases, and runtime theme switching through CSS design tokens. It includes built-in internationalization for over 50 languages, server-side rendering compatibility, and a Figma kit that mirrors the code components for design-to-development consistency.
The library distinguishes itself with extensive form handling capabilities, including schema-based validation with Zod or Valibot, nested form support, and configurable validation timing. It provides specialized input components for autocomplete with tag input and on-demand loading, code input with OTP support, numeric input with range constraints, and multi-select with checkbox options. The component set also includes advanced data visualization tools like progress bars with step labels and indeterminate animation, calendar components supporting single, range, multiple, and non-Gregorian date picking with event indicators and constraints, and pricing display components with grid, table, and card layouts.
Beyond core UI components, the library offers chat and messaging components with AI integration capabilities, including streaming responses, reasoning display, and tool-calling via the Model Context Protocol. It provides layout components for headers and footers with customizable slots, changelog timelines with scroll tracking, disclosure components with smooth transitions, and icon rendering from Iconify collections or custom SVGs. The library also includes performance optimizations like local icon serving and list virtualization, along with project scaffolding through pre-built templates for dashboards, SaaS, and landing pages.
The library is distributed under the MIT license and can be used in plain Vue applications via Vite plugins with auto-imports and TypeScript support, with full documentation available for all components and features.