mhamlet / laravel-apidocs
This package is abandoned and no longer maintained.
No replacement package was suggested.
API Documentation generator for Laravel
dev-master / 1.0.x-dev
2017-05-21 10:59 UTC
Requires
- php: >=7.0
- illuminate/routing: 5.4.*
- illuminate/support: 5.4.*
Requires (Dev)
- phpunit/phpunit: 4.*
- scrutinizer/ocular: ~1.1
- squizlabs/php_codesniffer: ~2.3
This package is not auto-updated.
Last update: 2020-01-24 16:04:30 UTC
README
This Laravel package provides an API Documentation generator. It's based on your Routes and Controller Method DocBlock comments.
The package requires PHP >= 7.0 and Laravel 5.4.
Installation
Add the package in your composer.json by executing the command.
composer require mhamlet/laravel-apidocs
Next, add the service provider to config/app.php
MHamlet\Apidocs\ApidocsServiceProvider::class,
Documentation
// The main class of package is MHamlet\Apidocs\Generator // Let's write a simple "use" use MHamlet\Apidocs\Generator; // Generator has two statically declared methods - "forAllRoutes" and "forRoutesWithPrefix". // The first one will provide you to generate documentation for all defined // routes in your application. $routeGenerator = Generator::forAllRoutes(); // The second one will provide you to generate documentation for routes, // which URL's starts with given prefix. $routeGenerator = Generator::forRoutesWithPrefix('api'); // The route generator also has two methods - "describeRoutes" and "generate" // The first one will parse and describe the routes for you. $routeGenerator->describeRoutes() // It will return the following (the result is serialized in json to make it readable in this example) /* [ { "path":"api/users", "controller":"App\\Http\\Controllers\\UserController", "method":"index", "verbs":[ "GET", "HEAD" ] } ] */ // The second one will parse routes, controller comments and return the // API documentation itself. $routeGenerator->generate() // It will return the following result /* [ { "path":"api\/users", "verbs":[ "GET", "HEAD" ], "description":"Returns list of all users", "params":[ { "type":"int", "name":"from", "description":"test from" }, { "type":"int", "name":"offset", "description":"test offset" } ], } ] */
License
This package is open-sourced software licensed under the MIT license