投稿 提交工具 投放合作

Emerge:源码结构与指标可视化工具

数据分析 1.2k 80 Python 2026-11-14 在 GitHub 打开

扫描源码并计算指标、依赖与复杂度,生成可交互的 Web 图可视化与多种格式导出。

Emerge(emerge-viz)是一个交互式代码分析工具,扫描项目源码后计算指标与统计,并生成基于图结构的交互式 Web 应用,同时支持多种文件格式导出。它支持 C、C++、Groovy、Java、JavaScript、TypeScript、Kotlin、ObjC、Ruby、Swift、Python、Go 等语言的文件扫描,其中 Groovy、Java、JavaScript、TypeScript、Kotlin、Swift 还支持类等实体的提取。已实现的指标包括 SLOC、空白行复杂度、方法数、Fan-In/Fan-Out、Louvain 模块度,另有实验性的基于 git 的指标(SLOC、空白行复杂度、变更耦合)。可视化基于 D3 力导向图与 HTML canvas,节点着色结合 Louvain 模块度,支持暗色模式、实时搜索、TF-IDF 语义搜索、热力图、集群指标展示等交互功能;导出格式包括 GraphML、适配 D3 力导向模拟的 JavaScript、HTML 应用以及 JSON。工具主要用 Python 3 编写,可在 macOS、Linux 及现代浏览器上运行,提供 Docker 容器与 pip 两种安装方式,配置基于 YAML。

Star 趋势2026-11-07 — 2026-11-14当前 Stars 1.2k

1.2k11-0711-1211-14