天下事有难易乎?为之,则难者亦易矣;不为,则易者亦难矣。

告别“丝袜哥”,推荐这几个在线文档生成神器!

itzoo 494次浏览 0个评论

点击“终码一生”,关注,置顶公众号

每日技术干货,第一时间送达!



1

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格式的文档编写。


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


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


 

2

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等注解,就可以使用这个。



3

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的文档,并且不要求在线调试功能,可以使用这个。


 

4

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要求不太高,可以使用这个文档生成工具,比较功能还是比较强大的。


 

5

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等大厂等在使用,说明功能很好。














大道至简,是宇宙万物发展之规律,是中华文化之精髓,是中华道家哲学,是大道理极其简单,简单到一两句话就能说明白。所谓“真传一句话,假传万卷书”。“万物之始,大道至简,衍化至繁”出自老子的《道德经》。大道至简,不仅被哲学流派道家、儒家等所重视,也是人生在世的生活境界。


大道至简,大道无形,大道无法,这是一种大道自然、返朴归真的高级功态。在这种清净无为、忘我无私、天人合一的状态中,不求长功,功力自然上长;不求治病,身心自然调整;不求功能,功能自然显现;你不求大小周天,百脉自然畅通,最深刻的真理是最简单最普通的真理。把最复杂的变成最简单的,才是最高明的。最伟大的人仅仅因为简单才显得崇高。


大道至简,人生亦简。开悟,深奥了就简单,简单了才深奥,从看山是山,到看山是山,境界不一样,从简单到复杂,再从复杂到简单,就是升华。生活的意义在于简单,人修炼到一定程度,会淡泊一些事,会简单,你可以理解别人,但别人不一定理解你,其实人不在理解,在认同。


精于心,简于形。拷问灵魂这是人的终极问题,简不仅是一种至美,也是一种能力、一种境界。看透了不说透,高境界;朦胧地看,心透 ;透非透、 知未知 ,故意不看透,才是透彻;知道世事看不透,就是透,透彻后的不透彻,明白后的不明白,难得糊涂是真境界。


“大道至简”是做人的智慧,做人做事要将一件复杂的事情化为简单,那是需要智慧的。将繁杂的事情回归到简单,要有智慧、能力,也要有决心。有智慧的人都喜欢大道至简,因此,功和利,不可趋之若鹜;名和财,不可为之所累。淡泊以明志,宁静以致远。我们要简简单单的做人,踏踏实实的做事,用智慧化难为简。


为名利尽抛宠辱,清纯似儿时天真的童贞,朴实如父辈耕耘的沃土,只有心情平静的人方能视见“斜阳照墟落,穷巷牛羊归”的悠闲,听闻“荷风送秋气,竹露滴清响”的天籁,感受那“空山不见人,但闻人语响”的空旷。陶渊明就是这样的人,所以他能够吟出“采菊东篱下,悠然见南山”的绝句;欧阳修也是这样的一个人,所以他在谪居时仍能悠然自得的写出《醉翁亭记》。


大道至简,人生亦简。简不是物质的贫乏,而是精神的自在;简不是生命的空虚,而是心灵的单纯。大道至简是最高的道理往往是最简明的,人要学会简单、简朴生活、简捷行事,放下自己的私心杂念,当超出自我欲望的牢笼,当真正忘记自己的思想,忘记自己的意识,进入忘我忘物的状态。


人生的繁出于惑,以“仁”抗拒诱惑,以“智”解除困惑。不惑,才是人生由繁入简的标志。弱水三千,我只取一瓢饮;人生百态,须当从一而终。乐以忘忧,简以存真,才是人生的“大道至简”。


有个大道至简、平常心是道的故事:一个行者问老道长:“您得道前,做什么?”老道长:“砍柴担水做饭。”行者问:“那得道后呢?”老道长:“砍柴担水做饭。”行者又问:“那何谓得道?”老道长:“得道前,砍柴时惦记着挑水,挑水时惦记着做饭;得道后,砍柴即砍柴,担水即担水,做饭即做饭。”老道长和行者的对话让我们开悟,许多至高至深的道理都是含蕴在一些极其简单的思想中。


大道至简,人生易简。一千个人有一千种生存方式和生活道路,走过岁月、走过生活,心里有许多的感慨,一切放下,一切自在;当下放下,当下自在,生活中的很多问题并不需要放在心里,人生的很多负担并不需要挑在肩上。一念放下,才能感受到简单生活的乐趣,才能感受到心灵飞翔的快感。要想改变一些事情,首先得把自己给找回来。我们都有潜在的能量,只是很容易:被习惯所掩盖,被时间所迷离,被惰性所消磨。我们应该记住该记住的,忘记该忘记的,改变能改变的,接受不能改变的。我们要用最少的悔恨面对过去,用最少的浪费面对现在,用最多的梦面对未来。


天地之道,简易而已。人生苦短,诸事不想太复杂,简单生活。人生这部大戏一旦拉开序幕,不管你如何怯场,都得演到戏的结尾。成长过程中最大的挑战在于有些路段,只能自己寂静地走,快乐工作、简单生活才是幸福生活,人要懂得知足常乐,所有的哀伤、痛楚,所有不能放弃的事情,不过是生命里的一个过渡,你跳过了就可以变得更精彩。


最好的生活就是简单生活,一盏茶,一张桌,一处清幽,日子平淡,心无杂念。可是简单的生活却需要百般的努力,这样才会无忧无虑欣然享受生活。生活总的来说是完美的,不完美的是心态,不懂得欣赏的人,就会用挑剔把一切变得有残缺。简单做人,率性而为,把握分寸,随遇而安,坦然接受现实;简单做事,不惹事、不生事、不怕事,不悔、不怨、不惜自己所做的事。


人生就是一场漫长对抗,有些人笑在开始,有些人却赢在最终。试着微笑,试着回眸,放松自己,不强求、不萎靡、不浮躁。简单生活,随心、随性、随缘,做最好的自己,知足、微笑、淡然,即使再苦再累,只要坚持往前走,属于自己的风景终会出现。


生活容不容易,关键看你怎么活。处境在于心境,心境改变了,处境也会改变。你向生活要得越多,你就会变得越紧张、越复杂,生活也就越不容易。反之,你对生活要求的越少,就越容易满足,越容易快乐。江山明月,本无常主,得闲便是主人;大道至简,活在当下,知足便能常乐。


悟入无怀之静境,一轮之心月独明,尽显心静之境界;心静自然从容洒脱,持心若水笑面人生,更现心静之魅力。人生在世,平淡才是最真,静默才是最美,生命里最持久的不是繁华,而是平淡,不是热闹而是清欢。保持一颗童心,不开心的时候,心无遮拦地向朋友倾诉烦恼,开心的时候,肆无忌惮地开怀大笑,也许所有的忧愁会在倾诉中流走,所有的紧张会在大笑中释放。像孩子一样,简单生活,快乐生活,保持心灵原生态,一切都是美好的。


生命里总有一个故事,想讲述却难以开口,就这样在心底,渐渐谱成了曲。人就是这样,得不到的永远向往,失去了的,才会觉到珍贵。所谓的,得失、情缘、风景、驿站,都在时光的尘烟中,慢慢淡散。虽然,有些事情放下很难,但是,不属于自己的东西,终究会走远。


人的一生,注定要经历很多。红尘路上,有朗朗的笑声,有委屈的泪水,懵懂的坚持着,有成功的自信,有失败的警醒,每一段经历注定珍贵。生命的丰盈缘于心的慈悲,生活的美好缘于拥有一颗平常心,生活简单让人轻松快乐,想法简单让人平和宁静。因为简单,才深悟生命之轻,因为简单,才洞悉心灵之静。




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


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



6

apidoc


  • github地址:https://github.com/apidoc/apidoc

  • 开源协议:MIT License

  • Star: 8.7k

  • 开发语言:javascript

  • 用户:未知

  • 推荐指数:★★★★☆


示例地址:https://apidocjs.com/example/#api-User



apidoc是一个简单的 RESTful API 文档生成工具,它从代码注释中提取特定格式的内容生成文档。支持诸如 Go、Java、C++、Rust 等大部分开发语言,具体可使用 apidoc lang 命令行查看所有的支持列表。


apidoc 拥有以下特点:


  1. 跨平台,linux、windows、macOS 等都支持;

  2. 支持语言广泛,即使是不支持,也很方便扩展;

  3. 支持多个不同语言的多个项目生成一份文档;

  4. 输出模板可自定义;

  5. 根据文档生成 mock 数据;


优点:基于代码注释生成在线文档,对代码的嵌入性比较小,支持多种语言,跨平台,也可自定义模板。支持搜索和在线调试功能。


缺点:需要在注释中增加指定注解,如果代码参数或类型有修改,需要同步修改注解相关内容,有一定的维护工作量。


个人建议:这种在线文档生成工具提供了另外一种思路,swagger是在代码中加注解,而apidoc是在注解中加数据,代码嵌入性更小,推荐使用。


 

7

showdoc


  • github地址:https://github.com/star7th/showdoc

  • 开源协议:Apache Licence

  • Star: 8.1k

  • 开发语言:javascript、php

  • 用户:超过10000+互联网团队正在使用

  • 推荐指数:★★★★☆


示例地址:https://www.showdoc.com.cn/demo?page_id=9



ShowDoc就是一个非常适合IT团队的在线文档分享工具,它可以加快团队之间沟通的效率。


它都有些什么功能:


  • 响应式网页设计,可将项目文档分享到电脑或移动设备查看。同时也可以将项目导出成word文件,以便离线浏览。

  • 权限管理,ShowDoc上的项目有公开项目和私密项目两种。公开项目可供任何登录与非登录的用户访问,而私密项目则需要输入密码验证访问。密码由项目创建者设置。

  • ShowDoc采用markdown编辑器,点击编辑器上方的按钮可方便地插入API接口模板和数据字典模板。

  • ShowDoc为页面提供历史版本功能,你可以方便地把页面恢复到之前的版本。

  • 支持文件导入,文件可以是postman的json文件、swagger的json文件、showdoc的markdown压缩包,系统会自动识别文件类型。


优点:支持项目权限管理,多种格式文件导入,全文搜索等功能,使用起来还是非常方便的。并且既支持部署自己的服务器,也支持在线托管两种方式。


缺点:不支持在线调试功能


个人建议:如果不要求在线调试功能,这个在线文档工具值得使用。


PS:防止找不到本篇文章,可以收藏点赞,方便翻阅查找哦。


往期推荐



IntelliJ IDEA 2021.3 最新版本 免注册登陆 完美破解 永久激活

推荐几款大家常使用的 SSH 客户端工具

Java 18 要来了,你不会还在用Java 8吧?

秒杀系统“天花板”,不服不行!

Spring Boot + EasyExcel 导入导出,好用到爆,可以扔掉 POI 了!

阿里二面:main 方法可以继承吗?



ITZOO版权所有丨如未注明 , 均为原创丨转载请注明来自IT乐园 ->告别“丝袜哥”,推荐这几个在线文档生成神器!
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址