工具
ngrev Angular 应用结构分析工具
一款 Electron 桌面应用,对 Angular 项目的 TypeScript 源码做静态分析,以交互式图形展示其中的 NgModule、组件、指令、管道和服务提供者及其依赖关系,无需运行该应用。通过项目的 tsconfig 文件载入后,可从模块树逐层查看单个模块、模板和提供者,支持符号模糊搜索,并可将当前图形导出为 PNG。
使用条件与局限
- 项目已基本停滞:最新版本为 2021-01-18 发布的 v0.0.35,提供未签名的 macOS .dmg、Linux AppImage 和 Windows .exe。所审阅的 master 提交日期为 2021-07-26,package.json 中已写有尚未发布的 0.0.36。README 说明它是社区业余项目,并非由 Angular 团队维护。
- 输入为 Angular 项目自身的源码树,且需已安装依赖;对于 Angular CLI 应用,README 指定选择 src/tsconfig.app.json。应用须兼容 Ivy 编译器,低于 Angular 11 的版本未经测试。分析器固定使用 @angular/compiler-cli 11.0.3、ngast 0.6.2 和 TypeScript 4.0.5,文档未说明是否支持更新的 Angular 版本。它不分析已部署或压缩后的打包产物。
- 从源码构建需要 Node.js 和 yarn(CI 使用 Node 12)、Angular CLI 11,以及由 electron-builder 打包的 Electron 11.1.0。CI 工作流在 macOS、Ubuntu 和 Windows 上运行一项 Spectron 端到端测试,打开应用并解析一个小型 Angular 11 示例项目;该测试并不检验真实应用中图形的准确性。
- README 声明采用 MIT 许可;LICENSE.md 是沿用自 angular-electron 模板的 MIT 文本,保留了模板作者 2020 年的版权行。图形展示的是 ngast 从源码中解析出的结构,而非运行时行为。本次未安装或运行该工具。
关于此条目
- 类型
- 工具
- 类别
- 网站分析工具
- 关联
- 基础工具
- 目标
- 网站
来源复核于
说明已依据一手来源复核;这不代表已运行验证、经过安全审计或确认兼容。
一手来源
- README.md GitHub · mgechev/ngrev · 修订 edd1ee3
- README.md#L37-L48 GitHub · mgechev/ngrev · 修订 edd1ee3
- package.json GitHub · mgechev/ngrev · 修订 edd1ee3
- src/electron/model/project.ts GitHub · mgechev/ngrev · 修订 edd1ee3
- .github/workflows/build.yml GitHub · mgechev/ngrev · 修订 edd1ee3
- e2e/main.e2e.ts GitHub · mgechev/ngrev · 修订 edd1ee3
- LICENSE.md GitHub · mgechev/ngrev · 修订 edd1ee3
- https://github.com/mgechev/ngrev/releases/tag/v0.0.35