Skip to content

简介

archlint 是一款针对 TypeScript 和 JavaScript 项目的基于 AST 的架构异味检测器。它旨在通过防止架构退化来帮助团队维护健康的基准代码。

哲学

棘轮原则(持续改进)

架构债务最大的挑战在于其体量。如果一个工具在第一天就报告了 500 个循环依赖,团队很可能会忽略它。archlint 专注于差异 (diff)。它锁定当前状态,并且仅在您引入新的架构问题或使现有问题变得更糟时才导致 CI 失败。

解释,而非仅报告

仅仅知道你有一个“上帝模块 (God Module)”只是成功的一半。archlint 提供上下文:为什么它被视为架构缺陷、它如何影响你的代码库,以及重构建议。

开箱即用

无需配置服务器,无需维护数据库。这是一个在几秒钟内即可运行的命令行工具,支持现有的 .gitignore,并可通过一条命令轻松集成到任何 CI/CD 流水线中。

核心功能

  • 28+ 个检测器:涵盖依赖关系、模块设计、复杂度和设计模式。
  • 快速:使用 Rust 和 oxc 解析器构建。
  • 框架感知:内置对 NestJS、Next.js、React 等的智能支持。
  • 可视化:为循环依赖生成带有 Mermaid 图表的报告。
  • 集成:提供用于实时反馈的 ESLint 插件和用于 AI 辅助重构的 MCP 服务器。

Released under the MIT License.