shadcn-ui/lint
An agent-first linter for Tailwind design systems. Write design system rules that agents can verify.
解决的问题
@shadcn/lint 旨在防止 AI 编码代理在编写 UI 代码时违反设计系统规则。虽然 TypeScript 可以限制某些属性,但它无法为代理提供修复违规所需的指导。此 linter 提供具体且可操作的反馈,明确告诉代理哪里出错,并建议应使用的正确组件、变体或主题值。
工作原理
它作为 Tailwind CSS 项目的可编程 linter(兼容 ESLint 和 Oxlint),允许开发者为其组件定义“合约”。您可以指定特定组件允许或禁止使用的 Tailwind 类(例如,允许 mt-4 等布局类,但禁止在 Button 上使用 padding)。linter 会分析代码,并生成包含动态占位符(如 {{sizes}})的错误消息,以引导代理实现正确的设计系统方案。
适用人群
使用 Tailwind CSS 构建设计系统,并利用 AI 编码代理生成或修改 UI 代码,希望输出严格遵守设计规范而无需手动重写组件的开发者和团队。
主要亮点
- 代理优先反馈:提供描述性错误消息,告诉代理如何根据设计系统修复代码。
- 可编程规则:无需更改组件 API 或使用复杂 TypeScript 类型即可定义组件规则。
- 支持 Tailwind v4:适用于任何 Tailwind v4 项目,无论是否使用 shadcn/ui 库。
- 可自定义合约:可为组件的不同部分设置特定规则(例如,
CardTitle与CardContent使用不同规则)。 - 灵活集成:同时支持 ESLint 和 Oxlint,实现快速灵活的代码检查。
相关
- 项目
- 项目
- 项目
- 项目