Concord is a Laravel Extension for building modular Laravel Applications
konekt/concord is a Laravel package for concord is a laravel extension for building modular laravel applications.
It currently has 236 GitHub stars and 1.629.636 downloads on Packagist (latest version 1.18.1).
Install it with composer require konekt/concord.
Discover more Laravel packages by konekt
or browse all Laravel packages to compare alternatives.
Last updated
Concord is a Laravel Extension that helps to build Modules for Laravel Applications on top of Laravel's built-in Service Providers.
Concord at first is a Laravel package. It also offers some conventions that help you to better structure complex systems.
| Laravel | Concord | |:--------|:-----------| | 5.4 | 1.0 - 1.3 | | 5.5 | 1.0 - 1.8 | | 5.6 | 1.1 - 1.8 | | 5.7 | 1.3 - 1.8 | | 5.8 | 1.3 - 1.8 | | 6.x | 1.4 - 1.10 | | 7.x | 1.5 - 1.10 | | 8.x | 1.8+ | | 9.x | 1.10.2+ |
Modular Architecture is exactly what you think it is - a way to manage the complexity of a problem by breaking them down to smaller manageable modules. -- Param Rengaiah
Concord itself (this library) manages the modules.
Concord modules are isolated fractions of the business logic, built around a single topic.
There are two kinds of modules from the usage perspective:
Concord is not aware of this difference at all, but they represent two different approaches of modularization.
app/Modules/<ModuleName>;vendor/ folder;Either module types are always coupled to Laravel and Concord;
Refer to the Installation Section of the Documentation.
php artisan make:module ShinyModule
This will create a very basic in-app module in the app/Modules/ShinyModule folder.
In order to activate the module add it to the config/concord.php file:
return [
'modules' => [
App\Modules\ShinyModule\Providers\ModuleServiceProvider::class
]
];
See the Concord Documentation for all the nasty details ;)
concord:modules -> module:list)config/concord.php file will be eliminated, or split: