
napi 是由NanoAPI构建的一款多功能工具,旨在自动提供有关您软件架构复杂性的洞察,同时允许从代码库中提取功能并将其分解成更小的单元。napi 兼容所有主要的CI/CD平台,具有强大的CLI和直观的UI,可以无缝集成到您的开发和部署流程中。
历史上,这类工具仅由大型咨询公司或承包商构建,并且隐藏在高昂的咨询费用之后。napi 的目标是让这些工具对所有技能水平的开发者免费且易于访问。我们的愿景是帮助您在问题变成数亿美元的问题之前,深入了解系统架构层面的问题。额外的好处?不再有黑盒工具运行在您的代码上,以及完全确定性工具带来的信心。

napi?napi 不仅仅是一个CLI工具;它是一个全面的应用库,涵盖了组织内所有项目及其交互。napi 致力于支持所有主要编程语言。以下是当前状态:
| 语言/框架 | 状态 |
|---|---|
| Python | ✅ 支持 |
| C# | ✅ 支持 |
| C | ✅ 支持 |
| Java | ✅ 支持 |
| C++ | 🚧 进行中 |
| PHP | 🚧 进行中 |
| JavaScript | 🚧 进行中 |
| TypeScript | 🚧 进行中 |
获取最新更新,请访问我们的项目板。
napi 在mac、linux和windows系统上开箱即用。
要安装 napi,您可以使用我们的安装脚本:
要使用我们的便利脚本安装napi:
curl -fsSL https://raw.githubusercontent.com/nanoapi-io/napi/refs/heads/main/install_scripts/install.sh | bash
您也可以直接从我们的GitHub仓库手动下载并安装最新版本:
https://github.com/nanoapiio/napi/releases/latest
您可以使用Windows子系统Linux(WSL)运行napi https://learn.microsoft.com/en-us/windows/wsl/install
我们正在积极支持Windows原生环境。
如果您在安装过程中遇到任何问题,请参阅我们的故障排除指南
napi 提供了一个精简的命令行界面(CLI),用于快速高效地与您的软件项目互动和重构。
要查看所有命令,请运行:
napi --help
napi login与NanoAPI服务进行身份验证。此步骤是访问NanoAPI UI和使用napi某些功能所必需的。
napi init初始化项目。在执行其他任何命令之前,此步骤是必需的。
这将在项目根目录创建一个.napirc配置文件,存储进一步命令所需的路径和设置。
napi manifest generate生成您的代码库的清单,捕获其结构、依赖关系和关系,并将其推送到您的NanoAPI工作区应用程序中。
napi extract从您的代码库中提取特定符号(函数、类等)到单独的文件中。使用格式--symbol file|symbol,其中file是相对于项目根目录的路径,symbol是要提取的名称。UI可以生成这些命令,方便浏览代码时复制粘贴。
重要:每当您对代码库进行重大更改时,请运行
napi manifest generate以确保您的清单保持最新。清单数据可以集成到CI/CD工作流中,以跟踪随时间变化的架构变化。
napi 无缝集成到GitHub Actions、GitLab CI/CD和Jenkins等CI/CD平台。这使我们能够在后台构建可视化和重构所需的代码清单,无需等待本地运行,特别是在非常大的代码库(>1百万行代码)的情况下。
更多信息
我们欢迎社区贡献。请阅读我们的贡献指南,了解如何参与。
napi 根据Sustainable Use License许可。
NanoAPI是一个公平源项目。因此,我们认为将捐赠留给自己是不道德的。相反,我们将这样处理捐赠:
我们将定期发布关于资金池中有多少钱以及如何分配的更新。