Open zysam opened 8 years ago
一个工具(轮子),基于 node.js 来打造 swagger 风格的 http 服务。可以说是,跟 sails, hapi 类似,脚手架还可以是基于它们的打造。
核心是文档。 文档也是API,API分四部分,详见 api 目录,目录功能说明在仓库的 doc 目录下。 文档提供友好的网页工具编辑、预览。
swagger project create <name>
。生成一个项目脚手架。可以选择 node 的主流框架如:express, restify, hapi, sails等(没有 koa);然后就是 swagger-node 框架的约定或API。swagger project edit
。project root 下,找到 ./api/swagger/swagger.yml,可以在线编辑 swagger 文档,实时预览网页,实时保存于当前项目;也可以本地编辑 swagger.yml ,刷新网页预览。creat project -> framework as mw -> runner adapt framework -> tools; 分层设计不够清晰,大致是以上流程,难扩展。所以 koa 没有加进来。 koa 使用 generator 函数与其它框架的普通函数格格不入。
对 swagger.yml 进行,打包、分解、校验等功能,还提供 web 交互。也就是,swagger.yml 开始写得复杂了,有模版,嵌套的功能。
基于此,出现一些项目:
程序员最烦一件事,1 写文档;2 别人没写文档;
swagger 似乎能解决这个麻烦,如标题所说;
另外还有,基于文档来生成服务的,无缝与 express, hapi, koa 等框架接入,还支持 mongodb, validator等等。不过,我是不会考虑用的。
所以,你只要写 swagger 的文档就好。
当然,搭建相关服务啦。
不只,配置相关服务发现更新文档,自定义模版等等。。。
好像又引入一个轮子,但好像值得一试。
实践再续。