tomflidr/apigen

PHP 7.1 源代码 API 生成器。

维护者

详细信息

github.com/tomFlidr/ApiGen

源代码

安装: 12

依赖: 0

建议: 0

安全: 0

星级: 0

关注者: 2

分支: 309

v5.0.0-RC5 2017-08-31 11:06 UTC

README

Build Status Coverage Status Downloads Latest stable

ApiGen 是最简单、最容易使用且最现代的 API 文档生成器。它 完全兼容 PHP 7.1 特性,可以通过自己的 Finder、Annotation Subscriber 或甚至 Generator 等方式轻松扩展。

只需查看 ApiGen API

ApiGen Preview

我们需要您的帮助来完成 5.x 版本的发布

❤️ 我们需要您的帮助来测试 ApiGen 的新版本。

如何安装它?

将其添加到您的 composer.json

{
    "require": {
        "apigen/apigen": "dev-master",
        "roave/better-reflection": "dev-master#c87d856"
    }
}

然后更新

composer update

测试它,报告问题或发送 PR。

💀 4.x 版本不再支持,因为反射库发生了巨大变化,代码几乎是完全重写的。

建立在巨人的肩膀上

安装

composer require apigen/apigen --dev

使用方法

通过传递单个源和目标选项生成 API 文档

vendor/bin/apigen generate src --destination docs

或为多个目录生成 API 文档

vendor/bin/apigen generate src tests --destination docs

配置

以下是最小示例配置。将其保存为项目根目录下的 apigen.yml 文件

parameters:
    visibilityLevels: [public, protected] # array
    annotationGroups: [todo, deprecated] # array
    title: "ApiGen Docs" # string
    baseUrl: "http://apigen.org/api" # string
    overwrite: false # bool

哪些注解需要额外关注?

@see, @covers, @uses

对类、函数、属性、方法等元素的引用。

代码中

/**
 * @see SomeClass
 * @see SomeClass::$propety
 * @see SomeClass::someFunction()
 */

生成

@see <a href="class-SomeClass.html">SomeClass</a>
@see <a href="class-SomeClass.html#$someProperty">SomeClass::$property</a>
@see <a href="class-SomeClass.html#_someFunction">SomeClass::someFunction()</a>

@link

网站 URL。

代码中

/**
 * This is already mentioned on Wiki.
 * @link https://en.wikipedia.org/wiki/United_we_stand,_divided_we_fall Click to see a cool quote  
 */

生成

This is already mentioned on Wiki.
@link <a href="https://en.wikipedia.org/wiki/United_we_stand,_divided_we_fall">Click to see a cool quote</a> 

@internal

关联元素是内部的,因此 ApiGen 会将其隐藏。

主题

要启用自定义主题,只需在您的 apigen.yml 中提供 themeDirectory 配置选项即可

parameters:
    themeDirectory: path/to/theme # path to theme's config file

贡献

规则很简单

  • 新功能需要测试
  • 所有测试必须通过
    composer complete-check
  • 每个 PR 一个功能

我们将很乐意合并您的功能。