This package provides you with a simple tool to set up a new package and it will let you focus on the development of the package instead of the boilerplate.
$ composer require jeroen-g/laravel-packager
Then add the service provider in
$ php artisan packager:new MyVendor MyPackage
Result: The command will handle practically everything for you. It will create a packages directory, creates the vendor and package directory in it, pulls in a skeleton package, sets up composer.json, creates a service provider, registers the package in config/app.php and the app's composer.json.
$ php artisan packager:new MyVendor MyPackage --i $ php artisan packager:new --i
The package will be created interactively, allowing to configure everything in the package's
composer.json, such as the license and package description.
Remarks: The new package will be based on league/skeleton, plus a Laravel service provider.
Get & Git
$ php artisan packager:get https://github.com/author/repository $ php artisan packager:git https://github.com/author/repository
This will register the package in
config/app.php and in the app's
packager:git command is used, the entire Git repository is cloned. If
packager:get is used, the package will be downloaded, without a repository.
$ php artisan packager:get https://github.com/author/repository --branch=develop $ php artisan packager:get https://github.com/author/repository MyVendor MyPackage $ php artisan packager:git https://github.com/author/repository MyVendor MyPackage
It is possible to specify a branch with the
--branch option. If you specify a vendor and name directly after the url, those will be used instead of the pieces of the url.
$ php artisan packager:tests
Packager will go through all maintaining packages (in
packages/) and publish their tests to
$ php artisan packager:tests MyVendor MyPackage
Remarks: If a tests folder exists, the files will be copied to a dedicated folder in the Laravel App tests folder. This allows you to use all of Laravel's own testing functions without any hassle.
$ php artisan packager:list
An overview of all packages in the
$ php artisan packager:remove MyVendor MyPackage
MyVendor\MyPackage package is deleted, including its references in
Issues with cURL SSL certificate
It turns out that, especially on windows, there might arise some problems with the downloading of the skeleton, due to a file regarding SSL certificates missing on the OS. This can be solved by opening up your .env file and putting this in it:
Please see changelog.md for what has changed recently.
Please see contributing.md for details.
The EU Public License. Please see license.md for more information.