mellian-studios / laravel-modules
A maintained fork for modular Laravel application development
Fund package maintenance!
Requires
- php: ^8.3
- ext-dom: *
- ext-json: *
- ext-simplexml: *
- wikimedia/composer-merge-plugin: ^2.1
Requires (Dev)
- friendsofphp/php-cs-fixer: ^v3.52
- laravel/framework: ^13.0
- laravel/pint: ^1.16
- mockery/mockery: ^1.6
- orchestra/testbench: ^11.0
- phpstan/phpstan: ^2.0
- phpunit/phpunit: ^12.0.
- spatie/phpunit-snapshot-assertions: ^5.0
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-09-06 14:53:19 UTC
README
| 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 |
| 11.0 | ^11.0 |
| 12.0 | ^12.0 |
| 13.0 | ^13.0 |
mellian-studios/laravel-modules is a Laravel package for managing large Laravel applications using modules. A module is similar to a Laravel package and can contain views, controllers, models, and other application code. This fork is supported and tested with Laravel 13.
This package is maintained by Mellian Studios and is a fork of nWidart/laravel-modules. The upstream package was itself based on pingpong/modules.
The Nwidart\Modules PHP namespace is retained for backward compatibility, so existing application code and the service-provider name do not need to change.
Install
To install via Composer, run:
composer require mellian-studios/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"
Autoloading
from v11.0 autoloading
"Modules\\": "modules/",is no longer required, and should be removed from your composer.json if present.
By default, the module classes are not loaded automatically. You can autoload your modules by adding merge-plugin to the extra section:
"extra": { "laravel": { "dont-discover": [] }, "merge-plugin": { "include": [ "Modules/*/composer.json" ] } },
Important
on the first installation you will be asked:
Do you trust "wikimedia/composer-merge-plugin" to execute code and wish to enable it now? (writes "allow-plugins" to composer.json) [y,n,d,?]
Answer y to allow the plugin to be executed. Otherwise, you will need to manually enable the following to your composer.json:
"config": { "allow-plugins": { "wikimedia/composer-merge-plugin": true }
if
"wikimedia/composer-merge-plugin": falsemodules will not be autoloaded.
Tip: don't forget to run composer dump-autoload afterwards
Documentation
Installation and usage information for this fork is maintained in this README. Release notes are available in the changelog.
Community
For help with this fork, start a thread in GitHub Discussions.
Credits
License
The MIT License (MIT). Please see License File for more information.