Skip to content

MrPunyapal/laravel-extended-commands

Repository files navigation

This package has some commands which are not available in laravel.

Latest Version on Packagist GitHub Tests Action Status Total Downloads

Installation

You can install the package via composer:

composer require mrpunyapal/laravel-extended-commands

You can publish the config file with:

php artisan vendor:publish --tag="laravel-extended-commands-config"

This is the contents of the published config file:

return [
    // Nothing to configure yet.
];

Usage

Make Builder

php artisan make:builder {name}

Make Builder with Model

php artisan make:builder {name} --model={model}

Make Collection

Create a new Eloquent custom collection class. By default the class is generated into the App\Models\Collections namespace and extends Illuminate\Database\Eloquent\Collection.

php artisan make:collection {name}

Create a collection with a model generic PHPDoc (adds @template and @extends in the generated class):

php artisan make:collection {name} --model={model}

When generating a model you can also scaffold a collection for it and inject a newCollection() method into the model using the --collection flag:

php artisan make:model {name} --collection

This will generate App\Models\Collections\{Name}Collection and add a newCollection(array $models = []) method to the model which returns the new collection instance.

Make Model with Builder

php artisan make:model {name} --builder

Make Action

Create a new action class. By default the class is generated into the App\Actions namespace and contains a handle() method.

php artisan make:action {name}

Create an invokable action (generates an __invoke method):

php artisan make:action {name} --invokable

Force overwrite an existing action file:

php artisan make:action {name} --force

Make Concern

Create a new concern (trait). By default the trait is generated into the App\\Concerns namespace.

php artisan make:concern {name}

Force overwrite an existing concern file:

php artisan make:concern {name} --force

Make Contract

Create a new contract (interface). By default the interface is generated into the App\\Contracts namespace.

php artisan make:contract {name}

Force overwrite an existing contract file:

php artisan make:contract {name} --force

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

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

About

This package has some commands which are not available in laravel

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Languages