969350794 / generator
Extend summerblue's generators scaffold.
v1.1.1
2026-01-24 05:52 UTC
Requires
- php: >=8.2.0
Requires (Dev)
- laravel/laravel: 12.*
- phpunit/phpunit: ^9.3.3
This package is auto-updated.
Last update: 2026-03-28 08:45:41 UTC
README
Laravel Scaffold Generator, for Laravel 12.x+.
Install
Step 1: Install Through Composer
composer require "969350794/generator:^1.0" --dev
Step 2: Add the Service Provider
Open /app/Providers/AppServiceProvider.php and, to your register function, add:
public function register()
{
if (app()->environment() == 'local' || app()->environment() == 'testing') {
$this->app->register(\Summerblue\Generator\GeneratorsServiceProvider::class);
}
}
Step 3: Run Artisan!
You're all set. Run php artisan from the console, and you'll see the new commands make:scaffold.
Examples
Use this command to generator scaffolding of Project in your project:
php artisan make:scaffold Project --schema="name:string:index,description:text:nullable,subscriber_count:integer:unsigned:default(0)"
This command will generate:
$ php artisan make:scaffold Project --schema="name:string:index,description:text:nullable,subscriber_count:integer:unsigned:default(0)"
----------- scaffolding: Project -----------
+ ./database/migrations/2026_01_23_092110_create_project_table.php
+ ./database/factories/ProjectFactory.php
+ ./database/seeders/ProjectSeeder.php
+ ./database/seeders/DatabaseSeeder.php (Updated)
+ ./app/Models/Project.php
+ ./app/Http/Requests/StoreProjectRequest.php
+ ./app/Http/Requests/UpdateProjectRequest.php
+ ./app/Services/ProjectService.php
+ ./app/Http/Controllers/ProjectController.php
+ ./app/Observers/ProjectObserver.php
+ ./routes/api.php (Updated)
----------- -------------------- -----------
----------- >DUMP AUTOLOAD< -----------
Explain
Generate the following:
- Migration with singular table name
- Seed, add ModelFactory entry, and DatabaseSeeder entry (Seeder name without Table suffix)
- Model with HasFactory support
- Resource Controller using Service layer
- Separate Store{Model}Request and Update{Model}Request files
- Service layer with CRUD operations and pagination support
- Update routes file to register resource route
- Observer
Key Features
- Service Layer: Controllers now use Service layer instead of directly using Model, which provides better separation of concerns
- Pagination Support: Service layer includes
getPaginated()method for easy pagination - Singular Naming: Uses singular table names and file/class names for consistency
- Separate Request Files: Generates separate Store{Model}Request and Update{Model}Request files
- No Unnecessary Files: Doesn't generate Model.php, AppServiceProvider.php, views, or policies
- Factory Support: Models include HasFactory support
- Type Declarations: Controllers include type declarations for service properties, providing better type safety