# 2.2 参与其中

我们欢迎您参与Knife4j项目。有很多贡献方式,包括回答有关issues的问题,编写新代码,改进现有代码,协助编写文档,开发示例或教程,报告错误或仅提出建议。有关更多信息,请参见我们的贡献 (opens new window)文档。

如何贡献文档

目前Knife4j的新版本文档启用Gitee提供的Pages服务,开发者可以直接通过编写Markdown文档的方式执行参与文档贡献。你的文档贡献能帮助到每一个使用Knife4j的人,社区的壮大离不开每个开发者的贡献。

Knife4j的文档通过VuePress进行编写,文档源码位于Knife4j (opens new window)项目dev分支下的knife4j-doc目录

主要步骤:

1、开发者对仓库进行fork操作,然后pull到本地

2、本地安装VuePress,具体可以参考官方文档 (opens new window)

需要安装Node环境

3、安装本地依赖yarn install

4、运行Knife4j-doc文档查看效果npm run docs:dev,Windows用户可以直接调用start.bat命令

文档目录说明:

目前Knife4j-doc文档中主要包含4个顶级目录:

目录名称 说明
documentation 用户指南,Knife4j的软件特性介绍位于此文件夹下
action 实战指南,欢迎开发者贡献所有关于Knife4j实战部分的文章
oas OAS规范,OAS规范介绍,可以包含不同语言端的注解或说明
changelog Knife4j详细更新日志
faq FAQ问题列表

每个不同的目录中,开发者只需要在该目录创建markdown文档即可,一篇markdown文档即代表一篇文档说明,最终在.vuepress目录下的config.js中添加该markdown文档到相应的目录显示即可

例如:实战指南的目录规则:

function genActionSideBar() {
    return [
        {
            title: "1.Spring单体架构",
            collapsable: false,
            children: ["mavenbom.md", "springmvc", "springboot"]
        },
        {
            title: "2.Spring微服务架构",
            collapsable: false,
            children: ["springcloud-gateway", "springcloud-zuul.md"]
        },
        {
            title: "3.OAuth2.0",
            collapsable: false,
            children: ["oauth2-implicit.md", "oauth2-authorization_code.md", "oauth2-client_credentials.md", "oauth2-password.md"]
        },
        {
            title: "4. ASP.NET Core",
            collapsable: false,
            children: ["dotnetcore-knife4j-how.md", "dotnetcore-knife4j-guid.md"]
        }
    ]
}

如果有更多的实战文档,开发者可以现在action目录创建好与之对应的Markdown文档,然后在这里自行添加目录

需要注意的是,如果篇幅中有图片,且不是网络图片,贡献者可以将图片放在public的目录中,但是通过MD规范进行引用的时候,需要添加/knife4j的前缀,否则会出现图片404的情况

文档写完后,就可以在Knife4j的Gitee仓库中向作者发起PR请求了,需要将PR请求提交到dev分支!!!

被围观 人次
上次更新: 2020/11/13 10:07:34
有任何问题请使用Knife4j的标签在OSC社区