做一个 Java 、 Python 、rust 版本的 新 swagger-ui 包会有人用吗

196 天前
 rookie2luochao

已经做了前端 CDN 、React 、vue 版本,后端 golang 版本,正在做 后端 nodejs 版本,代码仓库地址如下,欢迎 fork, pr , 谢谢各位大佬: golang 版本仓库 openapi-ui 基础仓库

如果有人愿意往 openapi-ui 组织下提供 java 、python 、rust 版本的 swagger-ui 包(基于 openapi-ui 基础仓库,我将持续维护和迭代这个基础 UI),那将不胜感激

2371 次点击
所在节点    程序员
20 条回复
smartdoc647
196 天前
ui 这种还是适合小型组织,在大厂 ui 不怎么行的通。包括在应用里集成 swagger 也不太行, 侵入性会被很多团队放弃, 压法阶段基本上走下正常单元测试就可以, 不需要什么界面去自测。成熟组织一般就是 yapi 和 torna 这种具备集成和管理的系统。
w292614191
196 天前
跟 knife4j 有啥区别?

https://doc.xiaominfo.com/
rookie2luochao
196 天前
@smartdoc647 我很认同你的观点,就是做它的原因就是用到 swagger-ui 的地方太难用,想做个稍微人性化点的,其他的却是没有想那么多,国内确实都非常不认同 swagger 这种 api 定义方式
rookie2luochao
196 天前
@smartdoc647 yapi 应该也不好做吧,不然也不会停止维护了?
rookie2luochao
196 天前
@w292614191 knife4j 是注解生成 api + api-ui, 是专门给 java 用的 jar 包,而我这个只是解耦出来的更简单 api-ui 层的抽象🥹,因为我只是个前端 er, 所以能力只够做 ui 层
smartdoc647
196 天前
@rookie2luochao yapi 不怎么维护,而且他的后台用 nodejs 开发的也不太符合现在很多公司的主流技术了,二次开发不行。所以我做 smart-doc 这个工具的时候发起了 torna ,torna 现在国内部署量还可以,但是受限于前端,目前社区也缺人力。
wssy001
196 天前
@rookie2luochao knife4j 前身也只是一个 swagger-ui 后来用的人多了 就加了功能增强
rookie2luochao
195 天前
@wssy001 原来是这样,java 是不是有更完美的一体化 swagger api + swagger-ui 方案,不然 knife4j 如果好用,应该这么多年,也不至于才 3K 多 star
wssy001
195 天前
@rookie2luochao 好用和 star 数有关系吗?
rookie2luochao
195 天前
@wssy001 认知里面 star 数侧面能一定程度反应火热程度?
jefferyJQ
195 天前
那你这和 apifox 有啥区别?
Ashe007
195 天前
没必要,毕竟 api 工具 postman ,apifox ,eolink 都支持生成在线接口文档。

模仿 swagger 那种侵入式框架更加希望渺茫
rookie2luochao
195 天前
@jefferyJQ 区别就是可以随着后端 api 一起预览?
rookie2luochao
195 天前
@Ashe007 可是后端写注解动态生成接口文档,顺便也能帮助前端自动化提效,不考虑侵入式还是很方便的,就是后端麻烦点,可是接口本来就应该写点注释?
Ashe007
195 天前
@rookie2luochao 在以前没多少人会编程的时候,swagger 框架确实对于前后端联调接口帮助很大,但是现在的趋势是全栈,大语言模型,前后端联调已经是一些很基础的东西了,即使不会随便问问 ChatGPT ,文心一言都能答疑解惑。

并且像 postman 这样的 api 软件都在推出在线接口文档,这也说明程序员更倾向于在接口调试时完成接口文档的编辑,而不是在编码时考虑接口文档。
rookie2luochao
195 天前
@Ashe007 您说的东西在现在这个时间点我是认同的,确实 swagger 对于后端来说是一个繁琐的东西。但是对于前端来说,却大有用处,可以节约不少写接口请求和测试接口的时间。可是在线文档也有一个更大的通病就是文档和代码的同步和一致性,这点 swagger 也是有的,但是在线 api 文档这点更为明显?
rookie2luochao
195 天前
@smartdoc647 我有时间去了解下前辈的 smart-doc ,请问 torna 部署量已经达到什么量级了?请问可以甩个 github 链接吗
Ashe007
195 天前
@rookie2luochao 同意你所指出的缺点(文档和代码的同步和一致性),但这些都是程序员修改接口时忘记修改接口文档所引发的,属于人为错误,不属于产品缺陷。

做一款产品需要迎合市场,当市场都在追求在线接口文档的时代,逆行开发类 swagger 框架,从概率上看投入产出比很难达到某个期望值
rookie2luochao
195 天前
@Ashe007 好的,虚心接受大佬的意见,愿意支持它是因为我是前端 er ,有了这个东西,我可以不用花很多精力去关心接口的变动,我可以用纯 ts 写业务代码,代码健壮性、繁琐性、可维护性大大增加
smartdoc647
194 天前
@rookie2luochao 目前主要在国内仓库,torna 是因外一个社区的人开发的,我属于项目发起人,docker 镜像下载量 5 位数+级别的,https://gitee.com/durcframework/torna

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1040171

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX