Laravel Packages

Generate Complete Application Modules with a Single Command using Laravel TurboMaker

Published
Generate Complete Application Modules with a Single Command using Laravel TurboMaker image

Laravel TurboMaker is a package designed to supercharge your development workflow by generating complete CRUD and API modules from a single Artisan command. Created by Jean-Marc Strauven, the package generates models, migrations, controllers, routes, tests, views, policies, and more—all following Laravel conventions and best practices.

Basic Usage

Generate a complete module with all associated files:

php artisan turbo:make Post
Sample Turbomaker command output
Sample output from the Turbomaker Artisan command

For API-only generation with tests and policies:

php artisan turbo:api Product --tests --policies

You can also define relationships directly from the command line:

php artisan turbo:make Comment --belongs-to=Post --belongs-to=User

Schema-Based Generation

For more complex projects, TurboMaker supports YAML-based schema definitions. First, create a schema with your field definitions:

php artisan turbo:schema create Product --fields="name:string,price:decimal,description:text"

The schema file will be generated in resources/schemas/product.schema.yml, a sample of which looks similar to this:

fields:
name:
type: string
nullable: false
price:
type: decimal
nullable: false
category_id:
type: foreignId
nullable: false
relationships: []
options:
table: products
timestamps: true
soft_deletes: false
metadata:
version: '2.0'
description: 'ModelSchema-powered schema for Product'
created_at: '2026-01-26'
engine: 'ModelSchema Enterprise'

Further edits can then be made by following the many field types and options outlined in the Schema System Documentation.

Then generate the module from that schema:

php artisan turbo:make Product --schema=Product

Customizations

To customize the default behaviors, publish the package's configuration file:

php artisan vendor:publish --tag=turbomaker-config

You can also publish and modify the stub templates as well:

php artisan vendor:publish --tag=turbomaker-stubs

Whether you're prototyping a new idea or scaffolding features for a larger project, TurboMaker can speed up the repetitive parts so you can focus on the interesting ones. Check out the GitHub repository for full documentation and more examples.

Yannick Lyn Fatt photo

Staff Writer at Laravel News and Full stack web developer.

Sponsored

masteringlaravel logo
Laravel Code Review

Get expert guidance in a few days with a Laravel code review

Visit Laravel Code Review

The latest

View all →
Laravel monitoring that doesn't bill you by your traffic image

Laravel monitoring that doesn't bill you by your traffic

Read article
Mock PHP Classes in Tests With the Double Library image

Mock PHP Classes in Tests With the Double Library

Read article
Laravel Discount: Coupon Codes, Usage Limits, and Stacking image

Laravel Discount: Coupon Codes, Usage Limits, and Stacking

Read article
Laravel Truss: Live Interactive Database ER Diagrams image

Laravel Truss: Live Interactive Database ER Diagrams

Read article
Laravel artisan dev: Run Server, Queue, Logs, and Vite image

Laravel artisan dev: Run Server, Queue, Logs, and Vite

Read article
Validate and Convert HEIC Images in Laravel image

Validate and Convert HEIC Images in Laravel

Read article