一、开源项目简介

接口文档解决方案,目标是让接口文档管理变得更加方便、快捷。Torna采用团队协作的方式管理和维护接口文档,将不同形式的文档纳入进来统一维护。

Torna弥补了传统文档生成工具(如swagger)的不如之处,在保持原有功能的前提下丰富并增强了一些实用的功能。

地址:https://gitee.com/durcframework/torna

二、开源协议

使用Apache-2.0开源协议

三、界面展示

四、功能概述

接口文档解决方案,目标是让接口文档管理变得更加方便、快捷。Torna采用团队协作的方式管理和维护接口文档,将不同形式的文档纳入进来统一维护。

解决文档管理痛点

  • 不满足swagger文档预览页面和调试页面的展现方式

  • 不喜欢swagger这种侵入式注解

  • 希望使用javadoc注释生成文档,并进行接口调试

  • 希望把公司所有项目接口文档进行统一管理

  • 希望把项目中的若干文档提供给第三方调用者查看

  • 希望可以统一管理项目中的字典枚举

如果您有以上几个需求和痛点,或许可以尝试一下使用Torna

五、技术选型

用步骤

方式1:下载zip本地运行

  • 准备工作

    • Java环境,最低要求Java8

    • MySQL,要求5.6.5及以后,5.6.5之前的版本见:支持低版本MySQL

前往 发行版页面 ,下载最新版本,解压zip

导入数据库,执行mysql.sql(源码包中获取)

打开application.properties配置文件,修改数据库连接配置

执行sh startup.sh启动(Windows执行startup.bat)

访问:http://ip:7700

  • 登录账号:

用户名:admin,密码:123456

  • 后续升级

无特殊说明,只需要覆盖torna.jar文件和dist文件夹,然后重启即可

方式2:docker运行

导入数据库,执行mysql.sql

下载公共镜像

docker pull tanghc2020/torna:1.17.2

下载完成后,执行docker命令:

docker run --name torna --restart=always \
-p 7700:7700 \
-e JAVA_OPTS="-server -Xms512m -Xmx512m" \
-e MYSQL_HOST="11.11.11.11:3306" \
-e MYSQL_SCHEMA="torna" \
-e MYSQL_USERNAME="root" \
-e MYSQL_PASSWORD="root" \
-d tanghc2020/torna:1.17.2

运维脚本

需改更改的部分:

  • MYSQL_HOST:MySQL服务器地址

  • MYSQL_SCHEMA:数据库名称,默认不用改

  • MYSQL_USERNAME:MySQL用户名,要求账号能运行DDL/DML/ALTER语句

  • MYSQL_PASSWORD:MySQL密码

浏览器访问http://ip:7700,ip对应docker宿主机器ip,非docker容器ip

如果要增加其它配置项,参考:docker添加配置

docker-compose部署torna

【docker-compose方式部署torna】

kubernetes部署torna

【kubernetes部署torna】

推荐组合

smart-doc + Torna实现文档全流程自动化

如果您使用Java语言,推荐使用smart-doc + Torna

Torna整合smart-doc教程

smart-doc + Torna 组成行业领先的文档生成和管理解决方案,使用smart-doc无侵入完成Java源代码和注释提取生成API文档,自动将文档推送到Torna企业级接口文档管理平台。

通过这套组合您可以实现:只需要写完Java注释就能把接口信息推送到Torna平台,从而实现接口预览、接口调试。

如果您是非Java语言,可以使用表单页面编辑以上内容,完成后同样可以进行接口预览、调试。

其它资源

  • 开发文档

  • Torna整合smart-doc教程

  • Torna对应的示例工程 ,演示swagger插件的用法

  • Torna整合smart-doc示例

接口文档解决方案之Torna的更多相关文章

  1. 接口文档神器Swagger(上篇)

    本文来自网易云社区 作者:李哲 接口文档管理一直是一个让人头疼的问题,伴随着各种接口文档管理平台涌现,如阿里开源的rap,ShowDoc,sosoapi,等等(网上能找到很多这种管理平台,包括我们自己 ...

  2. asp.net core使用Swashbuckle.AspNetCore(swagger)生成接口文档

    asp.net core中使用Swashbuckle.AspNetCore(swagger)生成接口文档 Swashbuckle.AspNetCore:swagger的asp.net core实现 项 ...

  3. RESTful API接口文档规范小坑

    希望给你3-5分钟的碎片化学习,可能是坐地铁.等公交,积少成多,水滴石穿,谢谢关注. 前后端分离的开发模式,假如使用的是基于RESTful API的七层通讯协议,在联调的时候,如何避免配合过程中出现问 ...

  4. .Net Core---- WebApi生成Swagger接口文档

    1. Swagger是什么? Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目标是使客户端和文件系统作为服务器以同样的速度来更新.文件 ...

  5. Spring Boot(九)Swagger2自动生成接口文档和Mock模拟数据

    一.简介 在当下这个前后端分离的技术趋势下,前端工程师过度依赖后端工程师的接口和数据,给开发带来了两大问题: 问题一.后端接口查看难:要怎么调用?参数怎么传递?有几个参数?参数都代表什么含义? 问题二 ...

  6. 解决访问swaggerUI接口文档显示basic-error-controler问题

    问题描述 使用swagger生成接口文档后,访问http://localhost:8888/swagger-ui.html#/,显示如下: 有些强迫症的我,感觉看起来很不舒服,结果百度了好久,找到解决 ...

  7. 使用Swashbuckle.AspNetCore生成.NetCore WEBAPI的接口文档

    一.问题 使用Swashbuckle.AspNetCore生成.NetCore WEBAPI的接口文档的方法 二.解决方案 参考文章:https://docs.microsoft.com/zh-cn/ ...

  8. 接口文档管理工具-Postman、Swagger、RAP(转载)

    接口文档管理工具-Postman.Swagger.RAP 转自:http://www.51testing.com/html/10/n-3715910.html 在项目开发测试中,接口文档是贯穿始终的. ...

  9. net core Webapi基础工程搭建(三)——在线接口文档Swagger

    目录 前言 Swagger NuGet引用第三方类库 别急,还有 没错,注释 小结 前言 前后分离的好处,就是后端埋头做业务逻辑功能,不需要过多考虑用户体验,只专注于数据.性能开发,对于前端需要的数据 ...

  10. Spring Boot Swagger2自动生成接口文档

    一.简介 在当下这个前后端分离的技术趋势下,前端工程师过度依赖后端工程师的接口和数据,给开发带来了两大问题: 1.问题一.后端接口查看难:要怎么调用?参数怎么传递?有几个参数?参数都代表什么含义? 2 ...

随机推荐

  1. Nuxt Kit 的使用指南:模块创建与管理

    title: Nuxt Kit 的使用指南:模块创建与管理 date: 2024/9/11 updated: 2024/9/11 author: cmdragon excerpt: 摘要:本文是关于N ...

  2. DOM – Web Components

    前言 Web Components 已经听过很多年了, 但在开发中用纯 DOM 来实现还是比较少见的. 通常我们是配搭 Angular, React, Vue, Lit 来使用. 这篇就来讲讲纯 We ...

  3. iframe嵌套登录页-页面无法加载

    背景 活动页面和登录页跨域,过去都是跳转到登录页登录之后再跳转回来,体验不好. 现在需要将登录模块嵌入到活动页,因为懒,不想开发重复的模块,首先我想到的是iframe 刚开始还能正常使用,一段时间后安 ...

  4. Linux内核中cpu_capacity是什么?

    cpu_capacity 在Linux内核中,cpu_capacity 是用于表示每个CPU的处理能力的一个参数,通常用于调度器的负载均衡.它表明不同的CPU核心在计算资源分配中的相对性能,尤其在异构 ...

  5. window和Linux下安装nvidia的apex

    两种方法: 1.去github下下载apex,之后安装到你的python环境下,我的安装路径:E:\Anaconda\anaconda\envs\pytorch\Lib\site-packages 注 ...

  6. Java日期时间API系列18-----Jdk8中java.time包中的新的日期时间API类,java日期计算5,其他常用日期计算,星期计算,闰年计算等

    通过Java日期时间API系列8-----Jdk8中java.time包中的新的日期时间API类的LocalDate源码分析中可以看出,java8中的方法特别丰富,一些常用的计算如星期计算,闰年计算等 ...

  7. Vue 组件如何进行传值的?

    1 父子传值 在子组件标签设置属性,在子组件内使用 props 接收属性值 : 2. 子父传值 在子组件中使用 emit 自定义事件,在子组件标签注册自定义事件 ,接收参数 : 3. vuex 状态管 ...

  8. element表单校验 【登录】

    async btnOK () { // 1. 表单校验 (调用表单的校验方法获取校验结果) // this.$refs.formRef.validate(function (valid) { // c ...

  9. kotlin类与对象——>可见性修饰符

    1.在 Kotlin 中有这四个可⻅性修饰符:private .protected .internal 和public .如果没有显式指定修饰符的话,默认可⻅性是 public . 2.包,函数.属性 ...

  10. python中利用变量解压列表、元组、字符串、字典、文件对象、迭代器和生成器等序列

    一.如果知道序列中元素的个数,可以直接进行变量赋值. coords = (102, 40) lon, lat = coords print(lon) print(lat) text = "n ...