bylapidist/design-lint
GitHub: bylapidist/design-lint
一款基于设计令牌交换格式的代码检查工具,用于验证JavaScript、TypeScript和CSS代码是否严格遵循设计系统的规范。
Stars: 3 | Forks: 1
@lapidist/design-lint
[](https://www.npmjs.com/package/@lapidist/design-lint) [](https://github.com/bylapidist/design-lint/actions) [](LICENSE) **@lapidist/design-lint** 确保 JavaScript、TypeScript 和样式表与你的设计系统保持一致。它验证设计令牌,强制执行配置的组件/导入策略,并为持续集成管道提供丰富的格式选项。该 linter 仅基于 [Design Token Interchange Format (DTIF)](https://github.com/bylapidist/dtif) 运行,使用规范解析器和 schema 作为其参考实现。 ## 快速开始 **@lapidist/design-lint** 需要 Node.js ≥22。以下命令通过 `npx` 运行一次 linter,或在本地安装、初始化配置并检查你的 `src` 目录。有关更深入的 CLI 详情,请参阅 [使用指南](docs/usage.md)。 ``` # 无需安装即可运行 npx @lapidist/design-lint@latest src # 或添加到你的项目 npm install --save-dev @lapidist/design-lint npx design-lint init npx design-lint src ``` 完整的命令参考请参见 [使用指南](docs/usage.md)。 ## 为什么选择 design-lint? 通用 linter 理解代码风格,而非设计系统。`@lapidist/design-lint` 通过在整个代码库中强制执行令牌使用和组件约定,弥合了这一差距。 ### 令牌感知 `@lapidist/design-lint` 根据你配置的令牌约束标记原始值,以保持颜色、间距和排版的一致性。若要强制执行仅引用令牌,请在支持的情况下启用严格模式(例如令牌规则上的 `strictReference``[rule reference](docs/rules/index.md) 中了解更多信息。 ### 自动修复 使用 `--fix` 运行以应用可用的规则修复并整理代码。修复支持取决于具体规则;并非所有诊断都可自动修复。有关修复选项,请参阅 [使用指南](docs/usage.md)。 ### 广泛的语言支持 检查 JavaScript、TypeScript、CSS、SCSS 和 Less,包括内联样式(字符串属性和带有字面量值的 JSX 对象字面量)以及配置的标记模板源。动态内联样式表达式目前尚不支持。缩进的 `.sass` 文件目前会报告 `parse-error` 诊断。 ### 可扩展 通过自定义规则、格式化程序和令牌路径名称转换来扩展行为,以适应你的设计系统。 | 优势 | @lapidist/design-lint | 通用 linters | | ----------------------------------- | --------------------- | --------------- | | 设计令牌验证 | ✅ | ❌ | | 令牌弃用警告 | ✅ | ❌ | | 多语言样式 + 代码检查 | ✅ | ⚠️ (视情况而定) | 欲了解更多背景信息,请阅读 [介绍性博客文章](https://lapidist.net/articles/2025/introducing-lapidist-design-lint/)。 ## 文档 完整文档可在 [`docs/`](docs) 目录和 [design-lint.lapidist.net](https://design-lint.lapidist.net/) 上找到。请参阅 [docs/index.md](docs/index.md) 查看文档主页。 | 文档 | 用途 | | -------------------------------------- | --------------------------------------------------------- | | [使用](docs/usage.md) | 解释 CLI 标志、监视模式和缓存。 | | [配置](docs/configuration.md) | 详细说明令牌、规则级别和插件激活。 | | [规则](docs/rules/index.md) | 提供按类别分组的规则参考。 | | [格式化程序](docs/formatters.md) | 描述内置和自定义输出格式。 | | [CI](docs/ci.md) | 包括 GitHub Actions 和其他提供商的示例。 | | [API](docs/api.md) | 展示带有 TypeScript 类型的编程用法。 | | [架构](docs/architecture.md) | 解释 linter 的内部工作原理。 | ## 贡献 欢迎贡献。请阅读 [CONTRIBUTING.md](CONTRIBUTING.md) 并遵循 [行为准则](CODE_OF_CONDUCT.md)。 ## 许可证 [MIT](LICENSE)标签:CMS安全, CSS, Design Linter, Design Tokens, DTIF, GNU通用公共许可证, JavaScript, MITM代理, Node.js, npm, TypeScript, UI规范, 二进制发布, 云安全监控, 代码规范, 安全插件, 开源工具, 接口一致性, 数据可视化, 样式一致性, 组件验证, 自动化攻击, 设计令牌, 设计系统, 静态分析