A Laravel package for generating and auto-registering modular feature packages inside a Laravel application.
It creates a Modules/ folder structure, generates module controllers, models, migrations, routes, providers, and automatically loads module service providers so route files work without manual composer configuration.
make:module {name}creates a new module skeleton underModules/{Name}- Module provider auto-registration at runtime
- Auto-loads module routes, views, migrations, and helpers
- Support for additional resource generation via
make:module:resource - Works without requiring users to add a
Modules\PSR-4 autoload entry in the main app
- PHP
^8.0 - Laravel
^13.0
Install the package in your Laravel app:
composer require blitheforge/laravel-modular-kitLaravel will automatically discover the package service provider.
php artisan make:module AuthThis command generates:
Modules/Auth/Providers/AuthServiceProvider.phpModules/Auth/Routes/web.phpModules/Auth/Controllers/AuthController.phpModules/Auth/Models/Auth.phpModules/Auth/Database/Migrations/create_auth_table.phpModules/Auth/Database/Seeders/AuthSeeder.phpModules/Auth/ViewsModules/Auth/Helpers
Generate additional module resources with:
php artisan make:module:resource {module} {type} {name}Supported resource types:
controllermodelmigrationroute
Example:
php artisan make:module:resource Auth route loginThe package service provider scans Modules/ at runtime and:
- Registers a
Modules\PSR-4 namespace with Composer's autoloader - Discovers each module service provider
- Registers each module provider automatically
- Loads module routes, views, migrations, and helper files
This means module routes are loaded without custom manual setup in the consuming app.
php artisan make:module {name}php artisan make:module:resource {module} {type} {name}php artisan make:module-controller {module} {name}php artisan make:module-model {module} {name}php artisan make:module-migration {module} {name}php artisan make:module-route {module} {name}
A generated module uses the following layout:
Modules/{ModuleName}/
├── Controllers/
├── Database/
│ ├── Migrations/
│ └── Seeders/
├── Helpers/
├── Models/
├── Providers/
└── Routes/
└── web.php
MIT