MrPunyapal/
laravel-extended-commands
g4t.io

Laravel Extended Commands

81 stars by Yannick Lyn Fatt

This package will have some commands which are not available in laravel.

README from MrPunyapal/laravel-extended-commands Open on GitHub →

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

Latest Version on Packagist GitHub Tests Action Status Total Downloads Laravel Version Compatibility PHP Version Compatibility Laravel Boost Skill

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.
];

Laravel Boost

This package ships a Laravel Boost skill for its generators.

In a Laravel application that has laravel/boost installed, add this package and then run one of the following commands to discover or refresh the packaged skill:

php artisan boost:install
php artisan boost:update --discover

Boost can then install the laravel-extended-commands-development skill for tasks involving this package's custom Artisan generators.

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

Make Service

Create a new service class. By default the class is generated into the App\Services namespace.

php artisan make:service {name}

Force overwrite an existing service file:

php artisan make:service {name} --force

Make Facade

Create a new facade class. By default the class is generated into the App\Facades namespace and extends Illuminate\Support\Facades\Facade.

php artisan make:facade {name}

The command will automatically generate a snake_case accessor based on the facade name. For example:

php artisan make:facade FileUpload

This generates App\Facades\FileUpload with accessor file_upload.

Force overwrite an existing facade file:

php artisan make:facade {name} --force

If the name argument is not provided, you will be prompted to enter it:

php artisan make:facade
# Enter FacadeName (ex. FileUpload): Payment

You can also create facades with namespaces:

php artisan make:facade Payment\Stripe

This generates App\Facades\Payment\Stripe with accessor stripe.

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.

More from the ecosystem

marcreichel/
laya-php
g4t.io
3 53

LayaPHP: Self-Hosted Text Classification for PHP and Laravel

Classify text in PHP without an LLM bill: typed decisions in 100+ languages, self-hosted. Laravel-ready SDK for Laya, a Jev AI alternative.

ai classification decision-engine
marcreichel/laya-php via Laravel News
Josh-Dovey/
postcodes-laravel
g4t.io
5 9

Postcodes for Laravel: GB Postcode Lookup and Geography Data

Postcodes for Laravel adds typed GB postcode lookups, validation, geography data, distance searches, and test fakes through the GB Postcodes API.

Josh-Dovey/postcodes-laravel via Laravel News
RedberryProducts/
mailbox-for-laravel
g4t.io
4 115

Mailbox for Laravel: Preview and Test Rendered Email

Mailbox for Laravel captures outgoing mail in a local dashboard and lets you test rendered HTML, recipients, and attachments with fluent assertions.

RedberryProducts/mailbox-for-laravel via Laravel News