Package Data | |
---|---|
Maintainer Username: | LasseHaslev |
Maintainer Contact: | lasse@haslev.no (Lasse S. Haslev) |
Package Create Date: | 2016-12-11 |
Package Last Update: | 2017-09-24 |
Language: | PHP |
License: | Unknown |
Last Refreshed: | 2024-11-26 15:01:31 |
Package Statistics | |
---|---|
Total Downloads: | 102 |
Monthly Downloads: | 0 |
Daily Downloads: | 0 |
Total Stars: | 1 |
Total Watchers: | 2 |
Total Forks: | 0 |
Total Open Issues: | 1 |
Use Package development in your local projects.
Structure your applications functionality into modules and autoload the packages ServiceProviders.
Run composer require lassehaslev/laravel-modules
.
(Not needed in laravel 5.5) Add the following line to providers
in config/app.php
LasseHaslev\LaravelModules\Providers\ServiceProvider::class,
Ok, this step is very important: Add the following to your projects composer.json. If you do not, we cannot find out where your modules are loaded from.
"extra": {
...
"merge-plugin": {
"include": [
"Modules/*/composer.json"
],
"recurse": true,
"replace": false,
"merge-dev": true,
"merge-extra": false,
"merge-extra-deep": false
}
}
Now, run php artisan modules:make-folder
to create modules folder.
Run php artisan package:discover-modules
to find all packages.
This will discover vendor packages and package modules.
You should replace the discover function in composer to auto update every time you run a composer command.
"post-autoload-dump": [
...
"@php artisan package:discover-modules"
]
Remember to run this command every time you create a new module.
I recommend you to use LasseHaslev/laravel-package-template to get a flying start to your local package.
Go to LasseHaslev/laravel-package-template quick package setup.
If you deside to change the place where your modules lives you must change path in composer.json extra.merge-plugin.include
.
You must also overwrite the config for modules
Config::set( 'modules.path', base_dir( 'your/new/path' ) )
# Install dependencies
composer install
# Install for running automatic tests
yarn
# Make Modules folders in orcestra to make tests work
mkdir vendor/orchestra/testbench-core/laravel/Modules
# Run one time
npm run test
# Automaticly run test on changes
npm run dev