Still on v1? Here's the v2 migration guide.
Generate API documentation for humans from your Laravel codebase. Here's what the output looks like.
Looking to document your Node.js APIs easily? Check out Scribe for JS.
- Pretty HTML documentation page, with included code samples and friendly text
- Included "Try It Out" button so users can test endpoints right from their browser
- Markdown source files that can be edited to modify docs
- Extracts body parameters information from Laravel FormRequests
- Safely calls API endpoints to generate sample responses, with authentication and other custom configuration supported
- Supports generating responses from Eloquent API Resources or Fractal Transformers
- Supports Postman collection and OpenAPI (Swagger) spec generation
- Included UI components for additional styling
- Easily customisable with custom views
- Easily extensible with custom strategies
Scribe is a fork of mpociot/laravel-apidoc-generator, so see the migration guide if you're coming from there.
Check out the documentation at ReadTheDocs.
PHP 7.2.5 and Laravel/Lumen 6.0 or higher are required.
composer require --dev knuckleswtf/scribe
Publish the config file by running:
php artisan vendor:publish --provider="Knuckles\Scribe\ScribeServiceProvider" --tag=scribe-config
This will create a scribe.php
file in your config
folder.
- When using Lumen, you will need to run
composer require knuckleswtf/scribe
instead (no--dev
). - Register the service provider in your
bootstrap/app.php
:
$app->register(\Knuckles\Scribe\ScribeServiceProvider::class);
- Copy the config file from
vendor/knuckleswtf/scribe/config/scribe.php
to your project asconfig/scribe.php
. Then add to yourbootstrap/app.php
:
$app->configure('scribe');
Contributing is easy! See our contribution guide.