Laravel-Modules
, (*1)
Laravel |
laravel-modules |
5.4 |
^1.0 |
5.5 |
^2.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 5., (*2)
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., (*3)
With one big added bonus that the original package didn't have: tests., (*4)
Find out why you should use this package in the article: Writing modular applications with laravel-modules., (*5)
Install
To install through Composer, by run the following command:, (*6)
``` bash
composer require nwidart/laravel-modules, (*7)
### Add Service Provider
Next add the following service provider in `config/app.php`.
``` php
'providers' => [
Nwidart\Modules\LaravelModulesServiceProvider::class,
],
Next, add the following aliases to aliases
array in the same file:, (*8)
``` php
'aliases' => [
'Module' => Nwidart\Modules\Facades\Module::class,
],, (*9)
Next publish the package's configuration file by running:
``` bash
php artisan vendor:publish --provider="Nwidart\Modules\LaravelModulesServiceProvider"
Autoloading
By default the module classes are not loaded automatically. You can autoload your modules using psr-4
. For example:, (*10)
json
{
"autoload": {
"psr-4": {
"App\\": "app/",
"Modules\\": "Modules/"
}
}
}
, (*11)
Tip: don't forget to run composer dump-autoload
afterwards, (*12)
Documentation
You'll find installation instructions and full documentation on https://nwidart.com/laravel-modules/., (*13)
Credits
About Nicolas Widart
Nicolas Widart is a freelance web developer specialising on the Laravel framework. View all my packages on my website., (*14)
License
The MIT License (MIT). Please see License File for more information., (*15)