V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
rookie2luochao
V2EX  ›  程序员

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

  •  
  •   rookie2luochao ·
    rookie-luochao · 202 天前 · 2381 次点击
    这是一个创建于 202 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

    20 条回复    2024-05-15 13:52:52 +08:00
    smartdoc647
        1
    smartdoc647  
       202 天前
    ui 这种还是适合小型组织,在大厂 ui 不怎么行的通。包括在应用里集成 swagger 也不太行, 侵入性会被很多团队放弃, 压法阶段基本上走下正常单元测试就可以, 不需要什么界面去自测。成熟组织一般就是 yapi 和 torna 这种具备集成和管理的系统。
    w292614191
        2
    w292614191  
       201 天前
    跟 knife4j 有啥区别?

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

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

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

    做一款产品需要迎合市场,当市场都在追求在线接口文档的时代,逆行开发类 swagger 框架,从概率上看投入产出比很难达到某个期望值
    rookie2luochao
        19
    rookie2luochao  
    OP
       201 天前
    @Ashe007 好的,虚心接受大佬的意见,愿意支持它是因为我是前端 er ,有了这个东西,我可以不用花很多精力去关心接口的变动,我可以用纯 ts 写业务代码,代码健壮性、繁琐性、可维护性大大增加
    smartdoc647
        20
    smartdoc647  
       199 天前
    @rookie2luochao 目前主要在国内仓库,torna 是因外一个社区的人开发的,我属于项目发起人,docker 镜像下载量 5 位数+级别的,https://gitee.com/durcframework/torna
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2617 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 03:40 · PVG 11:40 · LAX 19:40 · JFK 22:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.