mcpField
S
shadcn

shadcn

github.com/shipshitdev设计与 UI3892 次安装1 天前更新
代码仓库

关于 shadcn

面向构建和重构 shadcn/ui 项目的最佳实践技能。按优先级整理的规则涵盖配置、组件组合、无障碍、样式、表单、数据展示和性能。

主要功能

  1. 0110 类共 58 条优先级规则
  2. 02配置与迁移指引
  3. 03组件及基础元素组合模式
  4. 04无障碍与键盘操作检查
  5. 05表单、表格和主题实践
  6. 06性能与状态管理指引

适用场景

  1. 01配置或迁移 shadcn/ui
  2. 02检查组件无障碍性
  3. 03实现带验证的表单
  4. 04构建大型数据集表格

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/shipshitdev/skills --skill shadcn

安装后在 Claude Code 中输入/shadcn确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

AGENTS.md
plugin.json
README.md
assets/templates/
_template.md
references/
_sections.md
_setup-mode.md
ally-aria-invalid-errors.md
ally-checkbox-label-association.md
ally-dialog-title-required.md
ally-ensure-color-contrast.md
ally-focus-visible-styles.md
ally-form-field-labels.md
ally-maintain-focus-management.md
ally-preserve-aria-attributes.md
ally-preserve-keyboard-navigation.md
ally-provide-sr-only-labels.md
arch-extend-variants-with-cva.md
arch-forward-refs-for-composable-components.md
arch-isolate-component-variants.md
arch-preserve-radix-primitive-structure.md
arch-use-asChild-for-custom-triggers.md
arch-use-cn-for-class-merging.md
comp-combine-command-with-popover.md
comp-compose-with-compound-components.md
comp-create-reusable-form-fields.md
comp-nest-dialogs-correctly.md
comp-use-drawer-for-mobile-modals.md
comp-use-slot-pattern-for-flexibility.md
data-empty-states-with-guidance.md
data-paginate-server-side.md

详细介绍

shadcn/ui 社区最佳实践

涵盖 shadcn/ui 的 10 个类别、58 条规则,按影响优先级排序,为自动重构和代码生成提供指导。

技术栈基线

规则面向当前版本的 shadcn/ui:Tailwind CSS v4(以 CSS 为先,无 tailwind.config.*,在 @theme inline 中定义令牌)、React 19(将 ref 作为 prop,使用 data-slot 属性)、统一的 radix-ui 包、OKLCH 颜色令牌、tw-animate-css、Field + React Hook Form Controller 表单,以及 Bun(bunx --bun shadcn@latest ...)。示例使用 Radix 基础(--base radix);CLI 也支持 Base UI 基础(--base base),此时触发器使用 render prop,而不是 asChild。对于 Tailwind v3 项目,请保留现有配置,并先遵循 shadcn 升级指南。

设置模式

在安装、修复或迁移 shadcn/ui 时使用(新项目、现有项目、从 Tailwind v3 迁移到 v4)。遵循 references/_setup-mode.md:选择 bunx --bun shadcn@latest init 路径,然后配置以 CSS 为先的 Tailwind v4(@theme inline、@custom-variant dark)、将 components.json 中的 tailwind.config 设为空、设置 cn() 辅助函数,并完成验证清单。只执行用户要求的设置;覆盖现有样式、配置或组件前,请先确认。设置完成后,以下规则即适用。

适用场景

  • 在项目中安装和配置 shadcn/ui(参见“设置模式”)
  • 编写新的 shadcn/ui 组件或组合基础组件
  • 使用 React Hook Form 和 Zod 验证实现表单
  • 构建数据表格或处理大型数据集的展示
  • 自定义主题或添加深色模式支持
  • 审查代码是否符合无障碍规范

按优先级划分的规则类别

优先级类别影响前缀
1CLI 和项目设置严重setup-
2组件架构严重arch-
3保留无障碍功能严重ally-
4样式与主题高style-
5表单模式高form-
6数据展示中高data-
7布局与导航中layout-
8组件组合中comp-
9性能优化中perf-
10状态管理低至中state-

快速参考

1. CLI 和项目设置(严重)
2. 组件架构(严重)
3. 无障碍功能保留(关键)
4. 样式与主题(高)
5. 表单模式(高)
6. 数据展示(中高)
7. 布局与导航(中)
8. 组件组合(中)
9. 性能优化(中)
10. 状态管理(低至中)

使用方法

阅读单独的参考文件,了解详细说明和代码示例:

参考文件

文件说明
references/_sections.md类别定义和排序
assets/templates/_template.md新规则模板

评论

支持 Markdown