我们很高兴推出全新版本的 Swagger Editor。
在为 Swagger 工具套件的激动人心发展做准备之际,旨在支持 API 社区广泛的 API 规范和语言,我们从头开始构建了新一代的 Swagger Editor。新编辑器包含了丰富的功能,如特定语言文档、更好的自动完成、验证、语法高亮、跳转到引用和查找符号。
一如既往,我们将继续直接在您的浏览器中提供这些功能和文档预览功能。更重要的是,体验将不再局限于 OpenAPI 规范的版本。我们理解 API 格局正在迅速演变,我们已将可扩展性作为我们工具的基础。从发布开始,我们的新编辑器将支持多种规范,同时确保易于扩展。这将能够快速采用新的规范和版本。
下一代 Swagger Editor - 功能介绍
开箱即用,新编辑器支持 AsyncAPI (版本 2.*)。这在您的网络浏览器中提供了丰富的 OpenAPI 和 AsyncAPI 编辑体验。我们增强的编辑器体验提供了现代集成开发环境 (IDE) 所期望的许多功能。
图 1 - Swagger Editor 支持 AsyncAPI
开始探索新功能
您可以在 https://editor-next.swagger.io/ 试用新的 Swagger Editor
技术栈
新编辑器是从零开始构建的,并使用了 Monaco Editor。Monaco 是为 VS Code 提供支持的同一代码编辑器。利用 Monaco 增强我们的编辑体验,提供了优雅的现代 UI、出色的自动完成功能,以及能够创建具有语言服务器协议 (LSP) 功能的强大客户端的 API。
Monaco 支持 Edge、Chrome、Firefox、Safari 和 Opera 浏览器。它具有强大的可扩展性功能,支持我们在编辑器和原生 IDE 插件之间共享最佳 API 设计和开发体验的愿景。
我们下一代编辑器建立在我们的多规范核心 Swagger ApiDOM 之上,它为跨 API 描述语言和序列化格式的 API 描述提供了一个单一的、统一的结构。我们将很快分享更多关于 Swagger ApiDOM 的信息和上下文,敬请关注!
结合 Swagger ApiDOM 的坚固核心、Swagger ApiDOM 语言服务和 Monaco,为我们的编辑器带来了强大的直观功能,这些是开发人员在编辑 API 工件时在原生 IDE 体验中期望的。将支持验证、语法高亮、自动完成、代码检查、跳转到引用、跳转到定义、操作等语言功能。
下一步
目前,新编辑器版本在一个独特的位置,与现有版本并行提供。
当新版 Swagger Editor 达到足够的功能对等性时,我们将把现有编辑器版本转为维护模式。达到功能对等性的路线图包括全面支持 OpenAPI 2.0(又称 Swagger 2.0)和 OpenAPI 3.0。
一旦我们达到所需的功能对等水平,现有编辑器版本将被基于 Monaco 的新编辑器取代。
同时,我们正在努力在新编辑器中支持 OpenAPI 3.1。将 OpenAPI 3.1 支持添加到我们的 Swagger Core 和 Swagger Parser Java 工具链正在进行中。不久,我们将提供更多关于我们在 Swagger 工具链中支持 OpenAPI 3.1 的旅程的信息,以及我们计划的路线图的见解。
我们非常希望您能参与我们 Swagger 的开源计划。请随时查阅我们的贡献指南。