# duo-doc **Repository Path**: ecoding/duo-doc ## Basic Information - **Project Name**: duo-doc - **Description**: Duo-Doc是对javadoc的扩展,对代码无入侵,通过分析读取代码注释、项目文件结构,自动生成接口文档。 主要提供的功能有: - 自动化文档 - 各环境的接口调用 - 调用请求保存 - 简单易用的Mock功能 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: http://doc.duoec.com/ - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 7 - **Created**: 2021-07-01 - **Last Updated**: 2021-07-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Duo-Doc 文档 ## 项目说明 Duo-Doc是对javadoc的扩展,对代码无入侵,通过读取分析代码注释、项目文件结构,自动提取项目接口、文档信息,并通过一个前端项目(duo-doc-angular)展现。
已实现的主要功能有: 1. 自动生成接口文档(支持离线阅读,支持markdown) 2. 支持多环境(测试、预发布、生产)的接口直接(RESTful、Dubbo)调用 3. 支持接口调用参数保存、共享 4. 生成调用代码(curl / java / javascript) 5. RESTful接口Mock(dubbo接口mock有这需求吗?) 6. SaaS模式(基于域名隔离) 7. ...

## 项目构架 ![duo-doc框架](http://w-assets.duoec.com/photo2/8901328168979901.jpg) duo-doc框架分为四部分: 1. duo-doclet: 是javadoclet的实现,因为javadoclet会生成类的文档,duo-doclet重写了默认的实现,它本身并不生成类文档,而是通过解析源文件,抽取了接口信息(包含接口签名、入参、响应、markdown文档等)再输出。有多种输出形式,比如post到文档服务器、api.json、markdonw结构输出等 2. invoker: 调用器,供接口调用使用,如果部署了多套环境,可以将调用器部署到各个环境里,实现多环境的调用 3. duo-doc service: duo-doc的后台服务,以RESTful的方式暴露接口,供duo-doclet上传数据、供web端拉取/调用、为三方应用提供接口元数据信息(比如为duo-graphql提供接口元数据等) 4. web: 文档的展示端,目前提供了一个标准的界面,实现了所有的功能。(有需要也可以直接重写)

## DEMO 官方提供了一个简单的[演示/DEMO](http://doc.duoec.com)。暂时未搭建dubbo环境,所以暂时未提供dubbo的调用demo [功能截图](/server/doclet-server/doc/snapshot.md)

## 项目文档 - [安装手册](/server/doclet-server/doc/安装.md) - [接入文档](/server/doclet-server/doc/文档接入.md) - [接口调用](/server/doclet-server/doc/接口调用.md) - [Mock](/server/doclet-server/doc/mock.md) - [常规操作](/server/doclet-server/doc/常规操作.md)