Repolode
dsherret

dsherret/ts-morph

对 TypeScript 编译器 API 的封装,用于静态分析和以编程方式修改 TypeScript、JavaScript 代码。

Star
6,224
Fork
249
未关闭 Issue
301
最近提交
上个月

这是什么?

ts-morph 在 TypeScript 编译器 API 之上提供了更高层的封装,便于遍历语法树、检查类型与符号,并以编程方式修改源代码。它面向需要生成、重构或分析 TypeScript 与 JavaScript 项目的工具开发者。

仓库采用 monorepo 结构。主包 ts-morph 是编译器 API 的封装,@ts-morph/bootstrap 则是一个独立的库,用于快速搭建编译器 API 环境。

项目使用 TypeScript 编写,并以 MIT 协议发布。仓库还提供了一个用于查看语法树的 TypeScript AST Viewer 网站。

核心功能

  • 01以更简单的 API 遍历和检查 TypeScript、JavaScript 语法树。
  • 02读取源文件中的类型和符号信息。
  • 03以编程方式修改代码,例如添加或修改声明。
  • 04提供独立的 bootstrap 包,便于快速搭建编译器 API 环境。

适用场景

  • 开发生成 TypeScript 文件的代码生成器。
  • 为大型代码库编写重构或迁移脚本。
  • 对 TypeScript 项目执行静态分析检查。

标签

常见问题

ts-morph 是什么?
对 TypeScript 编译器 API 的封装,用于静态分析和以编程方式修改 TypeScript、JavaScript 代码。 ts-morph 在 TypeScript 编译器 API 之上提供了更高层的封装,便于遍历语法树、检查类型与符号,并以编程方式修改源代码。它面向需要生成、重构或分析 TypeScript 与 JavaScript 项目的工具开发者。
ts-morph 可以免费使用吗?用的什么许可证?
ts-morph 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
ts-morph 还在维护吗?
半年内有更新。ts-morph 最近一次提交是在 2026年9月29日。
ts-morph 适合用来做什么?
开发生成 TypeScript 文件的代码生成器。 为大型代码库编写重构或迁移脚本。 对 TypeScript 项目执行静态分析检查。
在哪里获取 ts-morph?
源代码和安装说明在 GitHub 上:https://github.com/dsherret/ts-morph

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目