探索下一代Swagger Editor:编写和预览OpenAPI定义的利器!
项目地址:https://gitcode.com/swagger-api/swagger-editor
Swagger Editor是专为开发人员设计的一款工具,它允许您在浏览器中以JSON或YAML格式编辑OpenAPI API定义,并实时预览文档。这个强大的工具支持OpenAPI 2.0和3.0.3规格,使您可以无缝地与Swagger生态系统集成,包括代码生成、文档管理和更多。
项目介绍
Swagger Editor分为两个主要版本:
- SwaggerEditor@4 - 从
master
分支发布,部署在https://editor.swagger.io/。 - SwaggerEditor@5 - 从
next
分支发布,部署在https://editor-next.swagger.io/。
值得注意的是,只有SwaggerEditor@5支持OpenAPI 3.1.0规范,而SwaggerEditor@4被视为遗留版本,未来将不再支持OpenAPI 3.1.0。
这个项目提供两种不同方式的NPM模块:
swagger-editor
:适用于单页应用,依赖于Webpack、Browserify等来解决依赖关系。swagger-editor-dist
:包含所有需要的资源,可用于服务器端项目或无法处理npm模块依赖的Web项目。
技术分析
Swagger Editor基于最新的Web技术构建,提供了热重载开发服务器、自动化依赖检查、ESLint风格检测等功能。此外,它还支持多种脚本命令来帮助开发、构建和测试。
Swagger Editor@5是完全重构的新版本,虽然还有一些已知问题和未实现的功能,但它的性能和兼容性得到了显著提升。
应用场景
- API文档维护 - 使用Swagger Editor快速编辑和更新您的OpenAPI定义文件。
- 协作开发 - 允许团队成员共同编辑API文档,实时查看更改。
- API验证 - 在开发过程中实时验证OpenAPI规范的正确性。
- 演示和教学 - 教授OpenAPI规范和API设计的最佳实践。
项目特点
- 实时预览:修改API定义后,文档会立即更新,让您在编写时就能看到结果。
- 多版本支持:兼容OpenAPI 2.0和3.0.3,且新版本SwaggerEditor@5支持OpenAPI 3.1.0。
- 跨平台:在最新版Chrome、Safari、Firefox和Edge浏览器上运行良好。
- 可扩展:通过模块化设计,可以轻松集成到现有工作流中。
要开始使用,确保您的环境满足最低要求(Node.js v20.3.0 和 npm v9.6.7),然后运行npm i --legacy-peer-deps
安装依赖。想要进行本地开发?只需运行npm run dev
启动热重载开发服务器。
对于Docker爱好者,Swagger Editor也提供了Docker镜像,方便您快速部署。
最后,Swagger Editor的源码清晰,且有详细的文档指导,非常欢迎社区贡献者参与进来,共同优化和完善这个项目。
让我们一起探索Swagger Editor,为API开发带来更高效的工作流程吧!