Laravel | laravel-modules |
---|---|
5.4 | ^1.0 |
5.5 | ^2.0 |
5.6 | ^3.0 |
5.7 | ^4.0 |
5.8 | ^5.0 |
6.0 | ^6.0 |
7.0 | ^7.0 |
8.0 | ^8.0 |
9.0 | ^9.0 |
10.0 | ^10.0 |
nwidart/laravel-modules
is a Laravel package which created to manage your large Laravel app using modules. Module is like a Laravel package, it has some views, controllers or models. This package is supported and tested in Laravel 10.
This package is a re-published, re-organised and maintained version of pingpong/modules, which isn't maintained anymore. This package is used in AsgardCMS.
With one big added bonus that the original package didn't have: tests.
Find out why you should use this package in the article: Writing modular applications with laravel-modules.
To install via Composer, run:
composer require nwidart/laravel-modules
The package will automatically register a service provider and alias.
Optionally, publish the package's configuration file by running:
php artisan vendor:publish --provider="Nwidart\Modules\LaravelModulesServiceProvider"
By default, module classes aren't loaded automatically. To autoload them using psr-4, add the following line to the end of the root composer.json file under the autoload section:
{
"autoload": {
"psr-4": {
"App\\": "app/",
"Database\\Factories\\": "database/factories/",
"Database\\Seeders\\": "database/seeders/",
"Modules\\": "Modules/"
}
}
Tip: don't forget to run composer dump-autoload
afterwards.
You'll find installation instructions and full documentation on https://docs.laravelmodules.com/.
We also have a Discord community. https://discord.gg/hkF7BRvRZK For quick help, ask questions in the appropriate channel.
Nicolas Widart is a freelance web developer specialising on the Laravel framework. View all my packages on my website, or visit my website.
The MIT License (MIT). Please see License File for more information.