969350794/generator

Extend summerblue's generators scaffold.

Maintainers

Package info

github.com/969350794/generator

pkg:composer/969350794/generator

Statistics

Installs: 2

Dependents: 0

Suggesters: 0

Stars: 0

v1.1.1 2026-01-24 05:52 UTC

This package is auto-updated.

Last update: 2026-03-28 08:45:41 UTC


README

Travis Packagist Tag

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

  1. Service Layer: Controllers now use Service layer instead of directly using Model, which provides better separation of concerns
  2. Pagination Support: Service layer includes getPaginated() method for easy pagination
  3. Singular Naming: Uses singular table names and file/class names for consistency
  4. Separate Request Files: Generates separate Store{Model}Request and Update{Model}Request files
  5. No Unnecessary Files: Doesn't generate Model.php, AppServiceProvider.php, views, or policies
  6. Factory Support: Models include HasFactory support
  7. Type Declarations: Controllers include type declarations for service properties, providing better type safety

Thanks to