tomflidr / apigen
PHP 7.1 源代码 API 生成器。
v5.0.0-RC5
2017-08-31 11:06 UTC
Requires
- php: ^7.1
- kukulich/fshl: ^2.1
- latte/latte: ^2.4
- nette/finder: ^2.4
- nette/neon: ^2.4
- nette/utils: ^2.4
- phpdocumentor/reflection-docblock: ^3.1
- psr/container: ^1.0
- roave/better-reflection: dev-master#a402048
- symfony/config: ^3.3
- symfony/console: ^3.3
- symfony/dependency-injection: ^3.3
- symfony/finder: ^3.3
- symfony/http-kernel: ^3.3
- symfony/yaml: ^3.3
- symplify/package-builder: ^2.2
- zendframework/zend-code: ^3.1
Requires (Dev)
- phpstan/phpstan: ^0.8
- phpunit/phpunit: ^6.0
- symplify/easy-coding-standard: ^2.2
- tracy/tracy: ^2.4
This package is auto-updated.
Last update: 2024-09-26 05:12:39 UTC
README
ApiGen 是最简单、最容易使用且最现代的 API 文档生成器。它 完全兼容 PHP 7.1 特性,可以通过自己的 Finder、Annotation Subscriber 或甚至 Generator 等方式轻松扩展。
只需查看 ApiGen API
我们需要您的帮助来完成 5.x 版本的发布
❤️ 我们需要您的帮助来测试 ApiGen 的新版本。
如何安装它?
将其添加到您的 composer.json
{ "require": { "apigen/apigen": "dev-master", "roave/better-reflection": "dev-master#c87d856" } }
然后更新
composer update
测试它,报告问题或发送 PR。
💀 4.x 版本不再支持,因为反射库发生了巨大变化,代码几乎是完全重写的。
建立在巨人的肩膀上
- PHP 7.1+
- nikic/PHP-Parser
- Roave/BetterReflection
- phpDocumentor/TypeResolver
- phpDocumentor/ReflectionDocBlock
安装
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 一个功能
我们将很乐意合并您的功能。