Skip to content

快速开始 ​

BrutxUI 是面向 Vue 3 + Tailwind CSS 的新粗野主义(Neo-Brutalism)组件库。它提供大胆、无障碍且高度可定制的 UI 组件,支持 npm 依赖分发 与 CLI 源码引入 双轨模式。

BrutxUI 的优势场景 ​

  • 落地页和营销网站 — 需要大胆的视觉识别来脱颖而出
  • SaaS 仪表盘 — 清晰自信的 UI 建立用户信任
  • 创意作品集 — 拥抱原始、富有表现力的设计
  • 开发者工具 — 功能优先的美学契合目标受众
  • 初创团队 — 希望快速交付且拥有独特外观

适合柔和处理的场景 ​

  • 企业后台应用 — 用户期望传统的 UI 模式
  • 表单密集型工作流 — 最少的视觉噪音有助于完成填写
  • 数据密集型表格 — 粗野主义边框在大规模下可能显得沉重
  • 无障碍关键场景 — 减少动画和高对比度模式是主要需求

双轨分发与安装选型 ​

BrutxUI 提供两种引入方式,你可以根据团队对代码掌控度和维护成本的需求进行选择:

1. npm 包模式 (brutx-ui-vue) ​

  • 适用场景:标准化业务开发、偏好通过 package.json 集中升级、希望最小化维护成本的项目。
  • 特点:开箱即用、依赖版本由锁文件保证、天然享受语义化版本升级与 bugfix。

2. CLI 源码引入模式 (brutx-vue) ​

  • 适用场景:需要深度定制组件样式与结构、扩展自定义变体、消除第三方库锁定、或需要 AI 助手直接协同修改组件的项目。
  • 特点:组件代码直接落地到你的项目中(完全掌控源码)、无依赖锁定、按需引入。

系统可定制性 ​

所有视觉属性都由 CSS 自定义属性驱动。你可以在 :root 级别或按组件覆盖它们:

css
:root {
    --brutal-border-width: 3px;
    --brutal-border-color: #000000;
    --brutal-shadow-offset-x: 4px;
    --brutal-shadow-offset-y: 4px;
    --brutal-shadow-color: #000000;
    --brutal-radius: 0px;
    --brutal-bg: #ffffff;
    --brutal-fg: #000000;
    --brutal-primary: #FF6B6B;
    --brutal-secondary: #4ECDC4;
    --brutal-accent: #FFE66D;
    --brutal-destructive: #EF476F;
    --brutal-success: #7FB069;
    --brutal-muted: #f3f4f6;
    --brutal-muted-foreground: #4B5563;
    --brutal-ring: #000000;
    --brutal-info: #4A90D9;
    --brutal-overlay: rgba(0, 0, 0, 0.5);
    --brutal-placeholder: #9CA3AF;
}

BrutxUI 还提供了 useTheme 组合式函数,用于在运行时切换主题和暗色模式:

vue
<script setup>
import { useTheme } from 'brutx-ui-vue'

const { theme, colorMode, setTheme, toggleColorMode, initTheme } = useTheme()

// 在应用入口恢复用户偏好
initTheme()
</script>

详见主题与令牌指南。也可以先打开主题实验室,通过实时预览、对比度检查和 token 覆盖率生成一份可复制的 .theme-custom CSS。

定制预设 ​

BrutxUI 内置四套主题预设,你可以通过在根元素上添加类名来应用:

Classic(默认) ​

标志性的 BrutxUI 风格 — 粗 3px 边框、硬 4px 阴影、零圆角、鲜艳色彩。

html
<div class="theme-classic">
    <!-- Your app -->
</div>

Pastel ​

更柔和的风格 — 2px 边框、3px 阴影、8px 圆角、柔和的粉彩色调。

html
<div class="theme-pastel">
    <!-- Your app -->
</div>

Mono ​

灰度极致 — 4px 边框、5px 阴影、零圆角、黑白调色板。

html
<div class="theme-mono">
    <!-- Your app -->
</div>

Warm ​

原始感与温暖的视觉体验 — 3px 边框、4px 阴影、4px 圆角、暖棕色调。

html
<div class="theme-warm">
    <!-- Your app -->
</div>

AI 优先集成 ​

BrutxUI 旨在与 AI 编码助手无缝协作:

  • AGENTS.md — 项目根目录的统一 AI 配置文件,为所有 AI 工具提供项目指令
  • 结构化 Props — AI 可以理解和生成的 TypeScript 接口

详见 AI 集成指南。

无障碍优先 ​

每个组件都基于 reka-ui 无头原语构建,确保:

  • 正确的 ARIA 属性和角色
  • 键盘导航支持
  • 焦点管理和可见的焦点环
  • 屏幕阅读器兼容性
  • 减少动画支持

下一步 ​

蛮力铸就。