ab-creative/laravel-maker is a Laravel package for laravel 5.6 scaffolding generator.
It currently has 0 GitHub stars and 2 downloads on Packagist.
Install it with composer require ab-creative/laravel-maker.
Discover more Laravel packages by ab-creative
or browse all Laravel packages to compare alternatives.
Last updated
Laravel Maker is a tool to kick start project development and help with prototyping by creating scaffolding from YAML based definitions.
There are some amazing and highly complex CRUD and Admin resource_types but the aim of this is to create an opinionated scaffolding builder without many options but that is easy to hack and modify.
The package is designed to read from a yaml file (or files) that define the migrations, class names, labels etc.
The package is also capable of reading from an existing database table to so that crud can be created for that.
Laravel 5.5+
This package reads a yaml file and then creates the following resources:
The yaml files are defined in /database/models
Contains the Artisan commands
This directory mirrors the structure of Laravel and is setup to use Request and Repository classes.
These files will processed and placeholders replaced in order to generate the scaffolding files.
Stubs can be overloaded on a individual basis based on a path defined in config
This also mirrors the structure of Laravel.
e.g. BaseController, BaseModel
These files will be published as is.
__MODEL.NAME__ The name of the model class e.g. Post
__VIEW.RESOURCE.DIRECTORY__ e.g. posts
__VIEW.NAMESPACE.DIRECTORY__ e.g. admin
__ROUTE.PATH__ The Admin route in dot format e.g. posts
__ROUTE.AS__ The route prefix defined as 'as' in the route group variable e.g. admin
__MODEL.NAME.HUMAN__ The singular friendly name of the model e.g. post
__MODEL.NAME.HUMAN.PLURAL__ The plural friendly name of the model e.g. posts
__MODEL.VAR.NAME__ The singular variable name of the model e.g. post
__MODEL.VAR.NAME.PLURAL__ The plural variable name of the model e.g. posts
Setup a Laravel site as normal...
laravel new t6.example.com
php artisan key:generate
Edit .env
php artisan migrate
php artisan make:auth
Create and cd into /packages/AbCreative directory
git clone https://github.com/ab-creative/laravel-maker.git
Edit /composer.json to add the package:
"autoload": {
"classmap": [
"database/seeds",
"database/factories"
],
"psr-4": {
"App\\": "app/",
"AbCreative\\LaravelMaker\\": "packages/AbCreative/laravel-maker/src"
}
},
config/app.php providers:/*
* Package Service Providers...
*/
AbCreative\LaravelMaker\LaravelMakerServiceProvider::class,
Copy the test example.yaml definition from stubs/database/definitions/ into the main laravel /database/definitions/
Install the composer dependencies from the package in root e.g.
composer require symfony/yaml --dev
composer require laracasts/generators --dev
composer require laravelcollective/html
cd into /packages/abcreative/laravel-maker/ directory
run `../../../vendor/bin/phpuni
Use the generator via artisan e.g. php artisan build:command
file is a yaml file defined in /database/definitions/
tables a comma separated list of tables
--clean will delete an existing file
--force will overwrite an existing file
build:clean file Delete all the files generated by the package
build:controller file --force --clean Create a new controller
build:crud file --force --clean Create a new model, controllers, routes, views and migration
build:migration file --force --clean Create a new set of migrations
build:model file --force --clean Create a new model
build:request file --force --clean Create a new set of request classes
build:route file --force --clean Create a new route
build:view file --force --clean Create a new set of view files
build:yaml tables --force --clean Create Yaml from one or more database tables
This package has been developed by AB Multimedia Ltd
Copyright (c) 2018 AB Multimedia Ltd
For the full copyright and license information, please view the LICENSE file that was distributed with this source code.
This package is open-sourced software licensed under the MIT license.