Skip to content
This repository has been archived by the owner on Sep 10, 2019. It is now read-only.

A Command Line Tool to easily scaffold Laravel Packages

License

Notifications You must be signed in to change notification settings

aheenam/laravel-package-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laravel Package CLI

This project delivers a simple set of Console Commands to generate a directory structure for laravel package development.

For example simply create the complete directory structure for a new package by calling laravel-package generate vendor/package-name

Installation

Install this command as a global composer package

$ composer global require aheenam/laravel-package-cli

Usage

You can then create a new repository by calling the following command:

$ laravel-package generate vendor/package-name

This command will create a directory named package-name and will setup a basic setup for creating a Laravel package.

The directory structure will look like following:

├── database/
│   ├── .gitkeep
├── config/
│   ├── package-name.php
├── src/
│   ├── PackageNameServiceProvider.php
├── tests/
│   ├── TestCase.php
├── .gitignore
├── CHANGELOG.md
├── composer.json
├── LICENSE
├── phpunit.xml
├── README.md

All the files and classes will have set the correct names and namespaces, but remember that the generator is just creating a starting point. You should go through the files and add stuff that is missing.

Pass a custom path

You can also pass an second argument specifying the path where the packages should be generated.

$ laravel-package generate vendor/package-name packages/aheenam/

Above example would generate the package at ./packages/aheenam/packages-name. This can be handy if you want to use this generator within an existing Laravel project.

The --force option

By default you will get an error notice if a directory with given package name already exists. You can ignore existing directories by using the --force flag:

$ laravel-package generate vendor/package-name --force

Install composer dependecies

Using the --install flag, you can enforce that, after the generation of the package is done, the command changes into the new directory and runs composer install to install the dependecies.

Generate a LICENSE

You can pass an option to not only create an empty LICENSE file, but also populate it with the appropriate LICENSE content.

$ laravel-package generate vendor/package-name --license=MIT

Currently there are 3 LICENSE types implemented: MIT, Apache 2.0 and GNU GPL v3. Just pass the names and you should get your LICENSE generated.

Changelog

Check CHANGELOG for the changelog

Testing

To run tests use

$ composer test

If you are working on a windows machine use

vendor\bin\phpunit

Contributing

Information will follow soon

Security

If you discover any security related issues, please email [email protected] or use the issue tracker of GitHub.

About

Aheenam is a small company from NRW, Germany creating custom digital solutions. Visit our website to find out more about us.

License

The MIT License (MIT). Please see License File for more information.

About

A Command Line Tool to easily scaffold Laravel Packages

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages