iramgutierrez / lumen-resource-api
Create a resource API for Lumen 5.3: entity, repository, manager, validator, controller, migration, table , route and documentation
Requires
- php: >=5.5.9
- illuminate/console: 5.3.*
- illuminate/http: 5.3.*
- illuminate/support: 5.3.*
- laravelista/lumen-vendor-publish: ^2.0
- memio/memio: ^1.0
This package is not auto-updated.
Last update: 2024-11-04 15:52:30 UTC
README
Full resource generator for API RESTful,
This package implements the layers pattern design, include:
- Entity
- Controller
- Manager
- Validator
- Repository
- Migration
- Route
- Documentation (Require apidocjs installed)
Installation
Add the following line to your composer.json
file:
"iramgutierrez/lumen-resource-api": "1.3.*"
Run composer update
to get the package.
Once composer has installed the package add this line of code in your bootstrap/app.php
file:
$app->register(\IramGutierrez\API\APIServiceProvider::class);
Migrations and Configuration Publishing
Add this line of code to the $commands
protected array located in your app/Console/Kernel.php
file:
\Laravelista\LumenVendorPublish\VendorPublishCommand::class
Run php artisan vendor:publish
to publish this package configuration and migrations. Afterwards you can edit the file config/resource_api.php
to set the namespace for the resources generated.
Run migration to create required tables
php artisan migrate
Usage
Now, you should have available the Artisan command: create-resource-api
and can be used like this:
php artisan create-resource-api {Entity}
Example
Run
php artisan create-resource-api Test
And, the command ask you for the table name:
Table name [tests]:
namespace:
Path name [API]:
prefix route:
Prefix route []:
if do you want generate documentation:
Generate documentation? (Require apidocjs) (yes/no) [yes]:
if do you want generate the migration file:
Generate migration? (yes/no) [yes]:
if do you want run migration:
Run migration? (yes/no) [yes]:
if do you want add the route resource in routes.php
file:
Add routes resource? (yes/no) [yes]:
and if do you want add some middleware:
Middlewares or middleware groups (comma separated) []:
When the execution is finished, you should have available the following functional routes:
License
The Lumen Resource API package is released under the MIT License.