直观的
Vue UI 库

一个功能全面的 Vue UI 组件库(可选择用于 Nuxt),包含 125 个以上无障碍访问的 Tailwind CSS 组件,用于构建现代 Web 应用程序。适用于 Nuxt 及原生 Vue 应用(Vite、Inertia、SSR)。
开始使用开始使用探索组件
使用 Tailwind CSS 样式化
默认呈现精美样式,可随时覆盖任何您想要的样式。
基于 Reka UI 实现无障碍访问
开箱即用的强大无障碍支持。
TypeScript 类型安全
为所有组件提供自动补全和类型安全支持。
手风琴组件预览提示组件预览...[为保持精简,其余相似组件名翻译如下]...应用...身份验证表单...头像...头像组...徽章...横幅...博客文章...博客文章列表
手风琴组件预览提示组件预览...[为保持精简,其余相似组件名翻译如下]...应用...身份验证表单...头像...头像组...徽章...横幅...博客文章...博客文章列表
手风琴组件预览提示组件预览...[为保持精简,其余相似组件名翻译如下]...应用...身份验证表单...头像...头像组...徽章...横幅...博客文章...博客文章列表
手风琴组件预览提示组件预览...[为保持精简,其余相似组件名翻译如下]...应用...身份验证表单...头像...头像组...徽章...横幅...博客文章...博客文章列表
...[同理翻译各组件名,例如面包屑、按钮、日历、卡片、轮播图、版本记录、聊天消息等]...
...[同理翻译各组件名,例如面包屑、按钮、日历、卡片、轮播图、版本记录、聊天消息等]...
...[同理翻译各组件名,例如面包屑、按钮、日历、卡片、轮播图、版本记录、聊天消息等]...
...[同理翻译各组件名,例如面包屑、按钮、日历、卡片、轮播图、版本记录、聊天消息等]...

灵活的设计系统

利用 Nuxt UI 以 CSS 为优先的设计系统,结合 Tailwind CSS、语义化色彩体系及运行时配置,助您更快完成开发。
  • 以 CSS 为优先的配置
    使用 @theme 指令直接在 CSS 中定义字体、颜色和断点。这使得您的主题具有可移植性、易维护且易于定制。
  • 语义化色彩系统
    配置 7 个语义颜色别名(主色、辅助色、成功、信息、警告、错误、中性),用于描述颜色的用途而非具体数值。
  • 运行时颜色配置
    无需重新构建应用,即可通过 AppConfig 在运行时更改颜色、图标等,非常适合多租户应用或动态主题切换。
@import "tailwindcss";
@import "@nuxt/ui";

@theme static {
  --font-sans: 'Public Sans', system-ui, sans-serif;

  --color-brand-50: #f0f9ff;
  --color-brand-100: #e0f2fe;
  --color-brand-200: #bae6fd;
  --color-brand-300: #7dd3fc;
  --color-brand-400: #38bdf8;
  --color-brand-500: #3b82f6;
  --color-brand-600: #2563eb;
  --color-brand-700: #1d4ed8;
  --color-brand-800: #1e40af;
  --color-brand-900: #1e3a8a;
  --color-brand-950: #172554;
}

一致的设计令牌 (Design Tokens)

使用 CSS 变量作为设计令牌,结合语义化工具类,确保主题的一致性,并能自动适配浅色和深色模式。
  • 语义化颜色工具类
    使用如 text-primary、bg-success 或 border-error 等工具类,它们可通过 CSS 变量自动适配浅色和深色模式。
  • 文本和背景令牌
    提供完整的文本(text-dimmed, text-muted, text-highlighted)、背景(bg-default, bg-elevated, bg-accented)及边框工具类集合。
  • 全局布局变量
    使用 --ui-radius 定义圆角、--ui-container 定义布局宽度、--ui-header-height 实现一致的间距,从而定制全局样式。
@import "tailwindcss";
@import "@nuxt/ui";

:root {
  --ui-primary: black;
  --ui-radius: 0.5rem;
  --ui-container: var(--container-5xl);
  --ui-header-height: --spacing(24);
}

.dark {
  --ui-primary: white;
  --ui-bg: var(--ui-color-neutral-950);
}

根据需求定制组件

使用 Tailwind Variants API 结合插槽 (slots)、变体 (variants) 和复合变体,实现强大的组件主题化及智能类名合并。

  • Tailwind Variants API
    组件使用插槽实现灵活样式,使用变体实现基于属性的样式,使用复合变体实现复杂的条件样式,并支持智能类名合并。
  • 全局主题配置
    在 app.config.ts 中利用插槽、变体、复合变体和默认变体全局覆盖组件主题,确保应用内样式统一。
  • 组件级自定义
    通过 ui 属性微调特定组件的插槽样式,使用 class 属性覆盖根元素,提供最大程度的灵活性。
export default defineAppConfig({
  ui: {
    button: {
      slots: {
        base: 'font-bold'
      },
      variants: {
        size: {
          md: {
            base: 'px-4 py-2 text-sm'
          }
        }
      },
      defaultVariants: {
        color: 'neutral'
      }
    }
  }
})

使用生产就绪模板加速交付

从我们完全响应式、可访问且易于定制的模板开始,助您快速、轻松地启动项目。
  • 生产就绪的模板
    所有模板均基于最佳实践构建,已进行 SEO 优化和性能调优,只需极简配置即可立即部署至生产环境。
  • 支持 Nuxt 和 Vue
    为 Nuxt 和 Vue 应用提供专属模板,并针对不同框架进行了特定优化,选择最符合您项目需求的一个即可。
  • 完全可定制
    构建于 Nuxt UI 组件之上,拥有完全的源码访问权限,轻松自定义颜色、字体、布局和组件以匹配您的品牌标识。
Template Editor screenshot
Template Changelog screenshot
Template Portfolio screenshot
Template Chat screenshot
Template Dashboard screenshot
Template SaaS screenshot
Template Landing screenshot
Template Docs screenshot
Template Starter screenshot

加入 Nuxt UI 社区

加入我们蓬勃发展的开源社区,贡献代码、报告问题、建议功能或协助文档工作。每一次贡献都让 Nuxt UI 对生态系统中的每一个人变得更好。
connerblantonantfufarnabazzAlweNy26noook
maximepvrtHaythamasalamagenuBarbapapazesrdjanuar
J-Michalekhywaxsandros94malik-joudadanielroe
benjamincanacromhmlHugoRCDatinuxsmarroufin