Skip to main content
This article is based on source-code research. There are no official docs yet, and the repository is not formally released (as of April 2026).

What is Maestro?

Laravel Maestro is a monorepo-style orchestrator for centrally managing Laravel’s starter kits. Laravel’s starter kits come in multiple stacks—React, Vue, Svelte (Inertia), and Livewire—and there are more than 15 variants when you combine authentication methods (Fortify or WorkOS) and options (Teams, Blank). Maestro manages all of these variants in a single repository and automatically propagates changes to each starter kit repository.

What problem does it solve?

When starter kits are split into many variants, propagating a single fix to every variant becomes tedious. For example, opening separate PRs against React, Vue, Svelte, and Livewire to fix an authentication form validation is inefficient. Maestro solves this via a “shared layer and variant layer hierarchy.” The orchestrator decides which layer a change belongs to and applies it in the most appropriate place automatically.

Starter kit variants

The starter kits Maestro manages come in two stacks.

Livewire stack (6 variants)

Inertia stack (15 variants)

Combining three frameworks (React/Vue/Svelte) × Blank/Fortify/WorkOS × Teams on/off yields 15 variants total.

Repository structure

The orchestrator directory is itself a Laravel application that manages building and running the starter kits.

File layering system

Maestro’s core idea is “assembling a starter kit by stacking layers.” For Livewire (Fortify), files are copied in this order, with later layers overriding earlier ones: This layering yields a clear rule: “changes common to all kits go in Shared/; changes specific to Livewire go in Livewire/.”

Contribution workflow

Contributions to starter kits go to this Maestro repository, not the individual starter kit repositories.
1

cd into orchestrator and build a kit

Interactive prompts let you select the target kit and auth variant. You can also specify them directly with flags.
2

Run the built kit

The Laravel dev server and a file watcher start simultaneously. Changes made in the build/ directory are automatically copied to the correct location under kits/.
3

Make changes and test

Edit files inside the build/ directory. The watcher detects changes and mirrors them back into the kits/ directory.
4

Open a PR

Commit the changes under kits/ and open a PR. Once merged, Maestro automatically pushes the changes to each starter kit repository.
The build/ directory is gitignored. Make all changes inside build/, let the watcher sync them into kits/, and then commit.

Other development commands

Linting

Browser tests

Browser tests run on Pest + Playwright. The browser_tests/ directory is organized into three layers: bootstrap/ (shared setup), common/ (for Fortify), and teams/ (for Teams).

Narrowing with flags

Each command supports the --livewire, --react, --svelte, and --vue framework flags combined with --blank, --fortify, --workos, and --teams variant flags.

Configuring WorkOS environment variables

To build and run WorkOS variants, set the WorkOS client ID and API key in orchestrator/.env. These values are copied into the .env file under build/ at build time.

Current development status

  • GitHub repository: laravel/maestro
  • Formal release: none yet (no version tags or releases published)
  • Last commit: April 2026 (actively developed)
  • Required PHP version: ^8.2
  • Laravel version: ^13.0
Maestro isn’t a package for end users; it functions as development infrastructure for the Laravel team and contributors. The starter kits themselves (like laravel/starter-kit-react) are generated and managed from this monorepo by Maestro.

laravel/maestro repository

If you’re interested in contributing to a starter kit, start with the Maestro README.

Laravel starter kit official docs

See the official documentation for how to use the starter kits themselves.
Last modified on July 13, 2026