PHPackages                             ab-creative/laravel-maker - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. ab-creative/laravel-maker

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

ab-creative/laravel-maker
=========================

Laravel 5.6 scaffolding generator

021PHP

Since Apr 24Pushed 7y ago1 watchersCompare

[ Source](https://github.com/ab-creative/laravel-maker)[ Packagist](https://packagist.org/packages/ab-creative/laravel-maker)[ RSS](/packages/ab-creative-laravel-maker/feed)WikiDiscussions master Synced 2w ago

READMEChangelogDependenciesVersions (1)Used By (0)

Laravel Maker
=============

[](#laravel-maker)

Overview
--------

[](#overview)

Laravel Maker is a tool to kick start project development and help with prototyping by creating scaffolding from YAML based definitions.

Premise
-------

[](#premise)

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.

Requirements
------------

[](#requirements)

Laravel 5.5+

Overview
--------

[](#overview-1)

This package reads a yaml file and then creates the following resources:

- Public facing controller
- Admin controller
- Update request
- Store request
- Model
- Model Repository
- Migration
- Model factory
- Routes
- Public view templates
- Admin view templates

Yaml
----

[](#yaml)

The yaml files are defined in /database/models

Commands
--------

[](#commands)

Contains the Artisan commands

stubs
-----

[](#stubs)

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

Templates
---------

[](#templates)

This also mirrors the structure of Laravel.

e.g. BaseController, BaseModel

These files will be published as is.

Placeholders
------------

[](#placeholders)

`__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

Getting started
---------------

[](#getting-started)

1. Setup a Laravel site as normal...
2. `laravel new t6.example.com`
3. `php artisan key:generate`
4. Edit `.env`
5. `php artisan migrate`
6. `php artisan make:auth`
7. Create and cd into `/packages/AbCreative` directory
8. `git clone https://github.com/ab-creative/laravel-maker.git`
9. Edit /composer.json to add the package:

```

"autoload": {
        "classmap": [
            "database/seeds",
            "database/factories"
        ],
        "psr-4": {
            "App\\": "app/",
            "AbCreative\\LaravelMaker\\": "packages/AbCreative/laravel-maker/src"
        }
    },

```

10. Add the package to `config/app.php` providers:

```
/*
 * Package Service Providers...
 */

AbCreative\LaravelMaker\LaravelMakerServiceProvider::class,

```

11. Copy the test example.yaml definition from `stubs/database/definitions/` into the main laravel `/database/definitions/`
12. 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`

13. Create an admin user if necessary \[\]

Tests
-----

[](#tests)

cd into `/packages/abcreative/laravel-maker/` directory

run `../../../vendor/bin/phpuni

How to use
----------

[](#how-to-use)

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

Copyright
---------

[](#copyright)

This package has been developed by [AB Multimedia Ltd](https://www.ab-uk.com)

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.

License
-------

[](#license)

This package is open-sourced software licensed under the [MIT license](http://opensource.org/licenses/MIT).

###  Health Score

19

—

LowBetter than 9% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity38

Early-stage or recently created project

 Bus Factor1

Top contributor holds 50% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/41287252?v=4)[paulwrightabuk](/maintainers/paulwrightabuk)[@paulwrightabuk](https://github.com/paulwrightabuk)

---

Top Contributors

[![johnsvenn](https://avatars.githubusercontent.com/u/684983?v=4)](https://github.com/johnsvenn "johnsvenn (2 commits)")[![paulwrightabuk](https://avatars.githubusercontent.com/u/41287252?v=4)](https://github.com/paulwrightabuk "paulwrightabuk (2 commits)")

### Embed Badge

![Health badge](/badges/ab-creative-laravel-maker/health.svg)

```
[![Health](https://phpackages.com/badges/ab-creative-laravel-maker/health.svg)](https://phpackages.com/packages/ab-creative-laravel-maker)
```

###  Alternatives

[phlak/semver

Semantic versioning helper library

1831.6M66](/packages/phlak-semver)[vaersaagod/seomate

SEO, mate! It's important.

4442.5k2](/packages/vaersaagod-seomate)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
