这个项目能做什么
Tach 是一款面向 Python 项目的工具,通过强制执行依赖规则和接口规范,帮助维护模块化单体(modular monolith)架构。该项目用 Rust 编写,运行时零开销,可增量集成到现有系统中。
核心能力包括:
- 依赖强制检查:确保所有导入均来源于已声明的依赖项,并防止依赖图中出现循环。
- 接口管理:强制跨模块调用必须使用已定义的公开接口。
- 可视化:通过 Web 界面或 GraphViz DOT 格式生成依赖图。
- 分析工具:提供关于特定路径依赖和用途的报告,并支持生成 JSON 格式的依赖映射。
- 集成支持:兼容 CI/CD 流水线、pre-commit 钩子以及 VS Code 编辑器集成。
- 高级配置:支持分层架构、领域所有权划分、适用于 monorepo 的命名空间包,以及单个依赖项的逐步废弃功能。
评论
0 评分人数达到10人后显示
登录后参与讨论。