munza/scaffolder

This package is abandoned and no longer maintained. No replacement package was suggested.

A generator for generating generators for Laravel and Lumen.

v1.0.0 2017-08-28 07:56 UTC

This package is not auto-updated.

Last update: 2021-01-23 09:51:55 UTC


README

Latest Version on Packagist Software License Build Status Coverage Status Quality Score Total Downloads

Install

  • Install via Composer
$ composer require munza/scaffolder
  • Register service provider
// config/app.php
[
    'providers' => [
        Munza\Scaffolder\ScaffolderServiceProvider::class,
    ]
]
  • Publish config file

    • Laravel 5.4
    $ php artisan vendor:publish --provider="Munza\Scaffolder\ScaffolderServiceProvider"
    • Laravel 5.5 (select the provider after runniing)
    $ php artisan vendor:publish
    • Lumen
    $ cp vendor/munza/scaffolder/resources/config/scaffolder.php config/scaffolder.php
    // bootstrap/app.php
    $app->configure('scaffolder');

Configration

  • Edit config/scaffolder.php
    • namespace: The namespace for the generator classes.
    • paths.generators: The location for the generator classes.
    • stubs.generators: The location for the stub files.

Usage

  • Create generator
$ php artisan make:generator NewGenerator
  • Create stub
$ php artisan make:stub new
  • Edit generator class
// app/Console/Generators/NewGenerator.php

class NewGenerator extends Command
{
    protected $signature = 'make:new {name}';

    protected $description = 'Command description';

    public function create()
    {
        return $this->createFileFromStub(
            base_path("/app/NewFolder/{$this->argument('name')}.php"),
            'scaffolder::new',
            [
                'class' => $this->argument('name'),
            ]
        );
    }
}
  • Register generator
// app/Console/Kernel.php

class Kernel extends ConsoleKernel
{
    protected $commands = [
        Generators\NewGenerator::class,
    ];
}
  • Run generator
$ php artisan make:new NewFile

Change log

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

Testing

No testing available right now.

Contributing

Please see CONTRIBUTING and CODE_OF_CONDUCT for details.

Security

If you discover any security related issues, please email tawsif.aqib@gmail.com instead of using the issue tracker.

Credits

License

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