techindeck/laravel-module-generator

Create application modules followed by CLEAN pattern

v1.1.6 2023-03-13 22:12 UTC

This package is auto-updated.

Last update: 2024-09-14 01:47:43 UTC


README

Create laravel application modules inspired by CLEAN design pattern

Latest Version on Packagist

Total Downloads

This package allows you to easily generate a application module followed by SOLID Principle and CLEAN Architecture

Installation

You can install the package via composer:

composer require techindeck/laravel-module-generator

Usage

You can generate a module using the make:module <module name> on the Artisan CLI, will generate a module under App\Modules directory in the Laravel application

With all option         :    php artisan make:module 'module' -a
With specific options   :    php artisan make:module 'module' -CUGMRF -curdf

Available options:

Shorthand   Options             Description
  -a        --all               create module with all options
  -C        --controller        crate cases controller
  -U        --case              create usecases
  -G        --gateway           crate module gateway
  -R        --repo              create module repository
  -M        --model             create module model
  -F        --request           create gateway form request validation policy

  -c        --add               create usecase add
  -u        --update            create usecase update
  -r        --read              create usecase read
  -d        --delete            create usecase delete
  -f        --find              create usecase find

When using a module command to generating a module, you will need that options create entities followed by CLEAN pattern.

Direct Usage

This package aims to be very lightweight and easy to use. If you need to create individually of any options case, controller, gateway, repo, model, consider using of one these alternatives:

Usecases Example
- php artisan module:case-create 'name'
- php artisan module:case-update 'name'
- php artisan module:case-read 'name'
- php artisan module:case-delete 'name'
- php artisan module:case-find 'name'
Usecases Controller Example
- php artisan module:controller-create 'name'
- php artisan module:controller-update 'name'
- php artisan module:controller-read 'name'
- php artisan module:controller-delete 'name'
- php artisan module:controller-find 'name'
Usecases Gateway Example
- php artisan module:gateway 'name'
Usecases Model Example
- php artisan module:model 'name'
Usecases Repository Example
- php artisan module:repository 'name'

Credits

License

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