laravolt/thunderclap

Laravel CRUD generator

v4.0.2 2020-02-21 01:34 UTC

This package is auto-updated.

Last update: 2024-04-21 19:10:24 UTC


README

Laravel CRUD generator, especially for Laravolt platform.

Installation

Install thunderclap via composer:

composer require laravolt/thunderclap

Add service provider (only for Laravel <= 5.4):

Laravolt\Thunderclap\ServiceProvider::class,

WARNING!! Thunderclap assume followings package already installed in your application:

{
	"nwidart/laravel-modules": "^5.0",
	"sofa/eloquence": "^5.6"
}

Configuration

publish configuration file php artisan vendor:publish --provider='Laravolt\Thunderclap\ServiceProvider' --tag=config there will be file config/laravolt/thunderclap.php and example code inside it.

<?php

return [
    // specify columns that you want to except
    'columns' => [
        'except' => ['id', 'created_at', 'updated_at', 'deleted_at', 'remember_token']
    ],
    'view' => [
        'extends' => 'layout'
    ],
    // custom your routes specification
    'routes'     => [
        'prefix'    => '',
        'middleware' => [],
    ],
    // custom your namespace per module
    'namespace'  => 'Modules',
    'target_dir' => base_path('modules'),
    
    // Template skeleton (stubs)
    'default'    => 'laravolt',

    // name => directory path, relative with stubs directory or absolute path
    'templates'  => [
        'laravolt' => 'laravolt',
    ],    
];

Usage

  1. Run the command and choose your table
php artisan laravolt:clap

👏 clap your hand twice, and follow the magic...

  1. Register your module into composer.json and config/app.php, i.e your table name is category
    • composer.json
       "autoload": {
       	"psr-4": {
       		"App\\": "app/",
       		"Modules\\": "modules" <= insert here
       	},
       	....
       },
       ....
      
    • config/app.php
       'providers' => [
       	....
       	 /*
           * Package Service Providers...
           */
           
           Modules\Category\Providers\ServiceProvider::class,
               
          /*
           * Application Service Providers...
           */
          ....
       ]
      
      
  2. Run composer dumpautoload

Roadmap

  • Database based generator
  • JSON file based generator
  • Relationship
  • Field Type
    • Text
    • Textarea
    • Select
    • Checkbox
    • Date
    • Datetime
  • Table
    • Multiple delete
    • Confirm on delete
  • Form
    • Inline error message
    • Mark required field
  • Custom template
  • API generator
  • API documentation