PHPackages                             cblink/yapi-doc - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. cblink/yapi-doc

ActiveLibrary[API Development](/categories/api)

cblink/yapi-doc
===============

v1.2.7(2y ago)01.2k2MITPHPCI failing

Since Jul 8Pushed 2y ago3 watchersCompare

[ Source](https://github.com/cblink/yapi-doc)[ Packagist](https://packagist.org/packages/cblink/yapi-doc)[ RSS](/packages/cblink-yapi-doc/feed)WikiDiscussions master Synced 5d ago

READMEChangelog (10)Dependencies (7)Versions (35)Used By (2)

yapi-doc
--------

[](#yapi-doc)

结合现有的接口集成测试，只需增加几行备注信息，即可自动创建yap文档。

> 支持的laravel版本

- laravel 6.x
- laravel 7.x

#### 安装

[](#安装)

```
composer require cblink/yapi-doc --dev
```

### 配置代码

[](#配置代码)

导入配置文件，配置文件名必须为yapi.php

```
php artisan vendor:publish --provider=Cblink\YApiDoc\ServiceProvider::class
```

### 配置说明

[](#配置说明)

配置比较麻烦，先凑合着用吧，这个等有空了再改

```
return [
   // yap请求地址
       'base_url' => 'http://yapi.cblink.net/',
       // 文档合并方式，"normal"(普通模式) , "good"(智能合并), "merge"(完全覆盖)
       'merge' => 'merge',

        // token配置
       'config' => [
            // key名称可以自定义，默认是 default ，可以增加多个token配置
           'default' => [
                // yapi project id
               'id' => 1,
                // yapi project token
               'token' => 'xxxxxx'
           ],
       ],

       'public' => [
           // 返回值前缀
           'prefix' => 'data',

           // 公共的请求参数,query部分
           'query' => [
                // 格式 key => [] , key为返回值名称
                // plan 的返回参数说明，
                // must，无论接口返回是否返回，都出现在yapi文档中
                // required，是否必须填写
               'page' => ['plan' => '页码，默认1'],
               'page_size' => ['plan' => '每页数量，不超过200，默认15'],
               'is_all' => ['plan' => '是否获取全部数据，不超过1000条'],
           ],

           // 公共的响应参数
           'data' => [
                // 格式 key => [] , key为返回值名称
                // plan 的返回参数说明，
                // must，无论接口返回是否返回，都出现在yapi文档中
                // required，是否必须出现
                // children，子集信息，参数和上边一样
               'err_code' => ['plan' => '错误码，0表示成功', 'must' => true, 'required' => true],
               'err_msg' => ['plan' => '错误说明，请求失败时范湖', 'must' => true],
               'meta' => [
                   'plan' => '分页数据',
                   'must' => false,
                   'children' => [
                       'current_page' => ['plan' => '当前页数'],
                       'total' => ['plan' => '总数量'],
                       'per_page' => ['plan' => '每页数量'],
                   ]
               ]
           ]
];
```

### 使用

[](#使用)

看下面示例使用

```
use Tests\TestCase;

class BaseTestCase extends TestCase
{
    public function test_store_products()
    {
        // 接口请求
         $res = $this->post('/api/product', [
            'product_name' => '商品名称',
            'price' => 500
        ]);

        // 参数 request, Illuminate\Http\Request
        $request = $this->app['request'];
        // 参数 response，Illuminate\Http\Response
        $response = $res->baseResponse;
        // 参数 dto
        $dto = new \Cblink\YApiDoc\YapiDTO([
            // 这里填多项会同时发布到多个项目组中
            'project' => ['default', 'custom'],
            'name' => '接口名称',
            'category' => '接口分组',
            'request' => [
                'trans' => [
                    ''
                ],
                'expect' => [
                ],
            ],
            'response' => [
                'trans' => [
                    // 数组的说明,如果是需要给数组加说明，需要带上*
                    // 多层级可以嵌套,   *.products.*.name => '订单商品名称'
                    '*.name' => '',
                    'price' => ''
                ],
                // 允许非必填的字段
                'expect' => [
                    '*' => ['name', 'price'],
                    'price',
                    'aaa' => ['name']
                ],
            ]
        ]);

        $yapi = new \Cblink\YApiDoc\YApi($request, $response, $dto);

        // 生成文件
        $yapi->make();
    }
}
```

### 发布文档

[](#发布文档)

```
php artisan upload:yapi
```

###  Health Score

31

—

LowBetter than 68% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity66

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~40 days

Recently: every ~10 days

Total

34

Last Release

816d ago

Major Versions

v0.2.3 → v1.0.02021-08-17

### Community

Maintainers

![](https://www.gravatar.com/avatar/8a33f3d22f7c5ba81df984215eda327fe21f224f59a8a8cb404138042ec9f788?d=identicon)[overnic](/maintainers/overnic)

---

Top Contributors

[![mouyong](https://avatars.githubusercontent.com/u/10336437?v=4)](https://github.com/mouyong "mouyong (28 commits)")

###  Code Quality

TestsPHPUnit

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/cblink-yapi-doc/health.svg)

```
[![Health](https://phpackages.com/badges/cblink-yapi-doc/health.svg)](https://phpackages.com/packages/cblink-yapi-doc)
```

###  Alternatives

[twilio/sdk

A PHP wrapper for Twilio's API

1.6k92.9M272](/packages/twilio-sdk)[knplabs/github-api

GitHub API v3 client

2.2k15.8M187](/packages/knplabs-github-api)[facebook/php-business-sdk

PHP SDK for Facebook Business

90121.9M34](/packages/facebook-php-business-sdk)[meilisearch/meilisearch-php

PHP wrapper for the Meilisearch API

73813.7M114](/packages/meilisearch-meilisearch-php)[google/gax

Google API Core for PHP

263103.1M454](/packages/google-gax)[google/common-protos

Google API Common Protos for PHP

173103.7M50](/packages/google-common-protos)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
