前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >干货分享|推荐几个超赞的在线文档生成工具,终于可以告别word时代了

干货分享|推荐几个超赞的在线文档生成工具,终于可以告别word时代了

作者头像
苏三说技术
发布2020-10-15 14:46:26
5.7K0
发布2020-10-15 14:46:26
举报
文章被收录于专栏:苏三说技术苏三说技术

关注“苏三说技术”,回复:开发手册、代码神器、面试、时间管理 有你想要的资料。

最近公司打算做一个openapi开放平台,让我找一款好用的在线文档生成工具,具体要求如下:

1.必须是开源的

2.能够实时生成在线文档

3.支持全文搜索

4.支持在线调试功能

5.界面优美

说实话,这个需求看起来简单,但是实际上一点的都不简单。

我花了几天时间到处百度,谷歌,技术博客 和 论坛查资料,先后调研了如下文档生成工具:

一、gitbook

github地址:https://github.com/GitbookIO/gitbook

开源协议:Apache-2.0 License

Star: 22.9k

开发语言:javascript

用户:50万+

示例地址:https://www.servicemesher.com/envoy/intro/arch_overview/dynamic_configuration.html

GitBook是一款文档编辑工具。它的功能类似金山WPS中的Word或者微软Office中的Word的文档编辑工具。它可以用来写文档、建表格、插图片、生成pdf。当然,以上的功能WPS、Office可能做得更好,但是,GitBook还有更最强大的功能:它可以用文档建立一个网站,让更多人了解你写的书,另外,最最核心的是,他支持Git,也就意味着,它是一个分布式的文档编辑工具。你可以随时随地来编写你的文档,也可以多人共同编写文档,哪怕多人编写同一页文档,它也能记录每个人的内容,然后告诉你他们之间的区别,也能记录你的每一次改动,你可以查看每一次的书写记录和变化,哪怕你将文档都删除了,它也能找回来!这就是它继承Git后的厉害之处!

优点:使用起来非常简单,支持全文搜索,可以跟git完美集成,对代码无任何嵌入性,支持markdown格式的文档编写。

缺点:需要单独维护一个文档项目,如果接口修改了,需要手动去修改这个文档项目,不然可能会出现接口和文档不一致的情况。并且,不支持在线调试功能。

个人建议:如果对外的接口比较少,或者编写之后不会经常变动可以用这个。

二、smartdoc

gitee地址:https://gitee.com/smart-doc-team/smart-doc

开源协议:Apache-2.0 License

Star: 758

开发语言:html、javascript

用户:小米、科大讯飞、1加

示例地址:https://gitee.com/smart-doc-team/smart-doc/wikis/文档效果图?sort_id=1652819

smart-doc是一个java restful api文档生成工具,smart-doc颠覆了传统类似swagger这种大量采用注解侵入来生成文档的实现方法。smart-doc完全基于接口源码分析来生成接口文档,完全做到零注解侵入,只需要按照java标准注释的写就能得到一个标准的markdown接口文档

优点:基于接口源码分析生成接口文档,零注解侵入,支持html、pdf、markdown格式的文件导出。

缺点:需要引入额外的jar包,不支持在线调试

个人建议:如果实时生成文档,但是又不想打一些额外的注解,比如:使用swagger时需要打上@Api、@ApiModel等注解,就可以使用这个。

三、redoc

github地址:https://github.com/Redocly/redoc

开源协议:MIT License

Star: 10.7K

开发语言:typescript、javascript

用户:docker、redocly

示例地址:https://docs.docker.com/engine/api/v1.40/

redoc自己号称是一个最好的在线文档工具。它支持swagger接口数据,提供了多种生成文档的方式,非常容易部署。使用redoc-cli能够将您的文档捆绑到零依赖的 HTML文件中,响应式三面板设计,具有菜单/滚动同步。

优点:非常方便生成文档,三面板设计

缺点:不支持中文搜索,分为:普通版本 和 付费版本,普通版本不支持在线调试。另外UI交互个人感觉不适合国内大多数程序员的操作习惯。

个人建议:如果想快速搭建一个基于swagger的文档,并且不要求在线调试功能,可以使用这个。

四、knife4j

gitee地址:https://gitee.com/xiaoym/knife4j

开源协议:Apache-2.0 License

Star: 3k

开发语言:java、javascript

用户:未知

示例地址:http://swagger-bootstrap-ui.xiaominfo.com/doc.html

knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案,前身是swagger-bootstrap-ui,取名kni4j是希望她能像一把匕首一样小巧,轻量,并且功能强悍。

优点:基于swagger生成实时在线文档,支持在线调试,全局参数、国际化、访问权限控制等,功能非常强大。

缺点:界面有一点点丑,需要依赖额外的jar包

个人建议:如果公司对ui要求不太高,可以使用这个文档生成工具,比较功能还是比较强大的。

五、yapi

github地址:https://github.com/YMFE/yapi

开源协议:Apache-2.0 License

Star: 17.8k

开发语言:javascript

用户:腾讯、阿里、美团、百度、京东等大厂

示例地址:http://swagger-bootstrap-ui.xiaominfo.com/doc.html

yapi是去哪儿前端团队自主研发并开源的,主要支持以下功能:

  • 可视化接口管理
  • 数据mock
  • 自动化接口测试
  • 数据导入(各种,包括swagger、har、postman、json、命令行)
  • 权限管理
  • 支持本地化部署
  • 支持插件
  • 支持二次开发

优点:功能非常强大,支持权限管理、在线调试、接口自动化测试、插件开发等,BAT等大厂等在使用,说明功能很好。

缺点:在线调试功能需要安装插件,用户体检稍微有点不好,主要是为了解决跨域问题,可能有安全性问题。不过要解决这个问题,可以自己实现一个插件,应该不难。

个人建议:如果不考虑插件安全的安全性问题,这个在线文档工具还是非常好用的,可以说是一个神器,笔者在这里强烈推荐一下。

如果这篇文档对您有所帮助的话,麻烦关注一下我的公众账号:苏三说技术,或者帮忙点赞或转发,坚持原创不易,您的支持是我坚持最大的动力。后面我会分享更多更实用的干货,谢谢大家的支持。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-09-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 苏三说技术 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、gitbook
  • 二、smartdoc
  • 三、redoc
  • 四、knife4j
  • 五、yapi
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档