blitheforge/laravel-modular-kit

Laravel package to scaffold modules and module resources.

Maintainers

Package info

github.com/blitheforge/laravel-modular-kit

pkg:composer/blitheforge/laravel-modular-kit

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 0

This package has no released version yet, and little information is available.


README

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.

Features

  • make:module {name} creates a new module skeleton under Modules/{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

Requirements

  • PHP ^8.0
  • Laravel ^13.0

Installation

Install the package in your Laravel app:

composer require blitheforge/laravel-modular-kit

Laravel will automatically discover the package service provider.

Usage

Create a module

php artisan make:module Auth

This command generates:

  • Modules/Auth/Providers/AuthServiceProvider.php
  • Modules/Auth/Routes/web.php
  • Modules/Auth/Controllers/AuthController.php
  • Modules/Auth/Models/Auth.php
  • Modules/Auth/Database/Migrations/create_auth_table.php
  • Modules/Auth/Database/Seeders/AuthSeeder.php
  • Modules/Auth/Views
  • Modules/Auth/Helpers

Add module resources

Generate additional module resources with:

php artisan make:module:resource {module} {type} {name}

Supported resource types:

  • controller
  • model
  • migration
  • route

Example:

php artisan make:module:resource Auth route login

How it works

The package service provider scans Modules/ at runtime and:

  1. Registers a Modules\ PSR-4 namespace with Composer's autoloader
  2. Discovers each module service provider
  3. Registers each module provider automatically
  4. Loads module routes, views, migrations, and helper files

This means module routes are loaded without custom manual setup in the consuming app.

Commands

  • 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}

Module structure

A generated module uses the following layout:

Modules/{ModuleName}/
├── Controllers/
├── Database/
│   ├── Migrations/
│   └── Seeders/
├── Helpers/
├── Models/
├── Providers/
└── Routes/
    └── web.php

License

MIT