ApiGen is easy to use and modern API doc generator supporting all PHP 8.3 features.
- phpDoc
- PHP 8.3
- PHP 8.2
- PHP 8.1
- PHP 8.0
- PHP 7.4
- PHP 7.2
- PHP 7.1
- PHP 7.0
- PHP 5.6
- PHP 5.4
ApiGen is available as apigen/apigen Docker image which you can directly use.
docker run --rm --interactive --tty --volume "$PWD:$PWD" --workdir "$PWD" \ apigen/apigen:edge \ src --output docs
This will install ApiGen phar binary to tools/apigen.
mkdir -p tools curl -L https://github.com/ApiGen/ApiGen/releases/latest/download/apigen.phar -o tools/apigen chmod +x tools/apigen tools/apigen src --output docs
This will install ApiGen to tools/apigen directory with executable entry point available in tools/apigen/bin/apigen.
composer create-project --no-dev apigen/apigen:^7.0@alpha tools/apigen tools/apigen/bin/apigen src --output docs
Generate API docs by passing source directories and destination option:
apigen src --output docs
ApiGen can be configured with apigen.neon configuration file.
parameters: # string[], passed as arguments in CLI, e.g. ['src'] paths: [] # string[], --include in CLI, included files mask, e.g. ['*.php'] include: ['*.php'] # string[], --exclude in CLI, excluded files mask, e.g. ['tests/**'] exclude: [] # bool, should protected members be excluded? excludeProtected: false # bool, should private members be excluded? excludePrivate: true # string[], list of tags used for excluding class-likes and members excludeTagged: ['internal'] # string, --output in CLI outputDir: '%workingDir%/api' # string | null, --theme in CLI themeDir: null # string, --title in CLI title: 'API Documentation' # string, --base-url in CLI baseUrl: '' # int, --workers in CLI, number of processes that will be forked for parallel rendering workerCount: 8 # string, --memory-limit in CLI memoryLimit: '512M'