shadcn/ui
这是一套设计精美的组件,您可以将它们复制并粘贴到您的应用程序中直接使用。一切信手拈来、便于定制、且开源。
一套精美设计的React组件集合,提供可复制粘贴的源码而非npm包,让你从基础组件开始构建自己的设计系统,同时保持完全的控制权和定制能力。
| 收费 | 开源免费,部署可选Vercel付费方案 |
|---|---|
| 平台 | Web,支持Next.js/Vite/Laravel/React Router/Astro/TanStack Start |
| 中文 | 文档无中文版 |
| 用途 | 构建可定制、可扩展的设计系统 |
shadcn/ui 不是传统的组件库——它不发布npm包,而是通过CLI将组件源码直接复制到你的项目中。这意味着你拥有每个组件的完整控制权,可以任意修改样式和逻辑,而不受库更新的约束。所有组件基于Radix UI(或可选的React Aria)构建,内置无障碍支持。
官方提供60+组件,涵盖从基础按钮到复杂的数据表格、图表、侧边栏等。此外,社区通过Registry机制贡献自定义组件和区块,无需额外配置即可通过CLI安装。
支持多种主流框架和构建工具,提供可视化预设工具和CLI两种初始化方式。
提供8种内置样式主题(Vega、Nova、Maia、Lyra、Mira、Luma、Rhea、Sera),支持深色模式,并通过CSS变量实现全局主题定制。
被OpenAI、Sonos、Adobe等公司采用,推荐部署于Vercel平台。
Q1:shadcn/ui 和传统组件库(如Ant Design)有什么区别?
A1:大型区别是分发模式:shadcn/ui 不发布npm包,而是通过CLI将组件源码复制到你的项目中,你拥有完整控制权,可以任意修改。而传统组件库作为依赖安装,升级和定制受限于库的API。
Q2:shadcn/ui 支持哪些React框架?
A2:官方支持Next.js、Vite、Laravel、React Router、Astro和TanStack Start。通过CLI的 `-t` 参数可选择对应模板,现有项目也可按框架指南手动集成。
Q3:如何在shadcn/ui中使用React Aria替代Radix UI?
A3:2026年7月起,React Aria成为一等公民。在shadcn/create中选择React Aria基础,或使用CLI初始化时添加 `--base aria` 参数。CLI会自动处理依赖、注册表解析、样式和组件安装,并输出基于React Aria的组件代码。
更多同类工具与网站,可在React分类继续挑选。
信息核实于 2026年7月,具体以官网为准。
评论
暂无评论