A collection of Artisan generators for Lumen and Laravel 5 to speed up RESTful API development.
Lumen Generators is a PHP package that provides Artisan command-line tools for generating boilerplate code in Lumen and Laravel 5 applications. It automates the creation of models, migrations, controllers, and routes, specifically tailored for building RESTful APIs. The package solves the problem of repetitive manual coding, speeding up development workflows.
PHP developers building RESTful APIs with Lumen or Laravel 5, particularly those who want to accelerate development by automating common scaffolding tasks.
Developers choose Lumen Generators because it offers a comprehensive set of generators that follow Laravel conventions, supports complex relationships and validation rules, and allows generating multiple resources from a YAML file—saving significant time compared to manual coding.
A collection of generators for Lumen and Laravel 5.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
The `wn:resource` command generates a model, migration, controller, and routes in one go, as demonstrated in the quick usage example with a Task resource, streamlining API development.
Commands support defining relationships like `--belongs-to` and automatically add foreign keys and relationship methods, as shown in the model generator section for complex data models.
Models include validation rules in the `$rules` array, which are used by the REST actions trait for automatic request validation, ensuring data integrity from the start.
The `wn:resources` command parses a YAML file to generate multiple interconnected resources, including pivot tables, saving time on complex setups as illustrated in the documentation.
The README shows version 1.3.3 and issues from 2016, with requested features like Fractal integration still pending, indicating limited recent development and potential compatibility risks.
Defining fields with schema, rules, and tags in commands like `wn:resource` requires learning a specific syntax (e.g., 'name;string;required;fillable'), which can be error-prone and cumbersome.
The generated controllers use a fixed trait for CRUD operations, lacking flexibility for custom business logic, advanced API features like pagination, or non-RESTful endpoints.