メインコンテンツへスキップ
この記事はソースコード調査に基づく情報です。公式ドキュメントはまだ存在せず、正式リリース前のリポジトリとなります(2026年4月時点)。

Maestroとは

Laravel Maestro は、Laravelのスターターキット群を一元管理するためのモノレポ型オーケストレーターです。 Laravelのスターターキットには、React・Vue・Svelte(Inertia)とLivewireという複数のスタックがあり、さらにそれぞれに認証方式(Fortify・WorkOS)やオプション(Teams・Blank)を組み合わせた15種類以上のバリアントが存在します。Maestroはこれらすべてのバリアントを単一リポジトリで管理し、変更を各スターターキットリポジトリへ自動的に反映する仕組みを提供します。

どんな問題を解決するか

スターターキットが多数のバリアントに分かれていると、一つの修正を全バリアントに反映する作業が煩雑になります。例えば認証フォームのバリデーション修正を React・Vue・Svelte・Livewire のそれぞれに個別にPRを出すのは非効率です。 Maestroはこの問題を「共有レイヤーとバリアントレイヤーの階層構造」で解決します。変更をどのレイヤーに加えるべきかをオーケストレーターが判断し、最も適切な場所に自動的に適用されます。

スターターキットのバリアント

Maestroが管理するスターターキットは二つのスタックで構成されます。

Livewire スタック(6バリアント)

Inertia スタック(15バリアント)

React・Vue・Svelteの3フレームワーク × Blank・Fortify・WorkOS × Teams有無の組み合わせで、合計15バリアントが存在します。

リポジトリの構造

orchestrator ディレクトリ自体がLaravelアプリケーションになっており、スターターキットのビルドと実行を管理します。

ファイル階層システム

Maestroの核心は「レイヤーを重ねてスターターキットを組み立てる」仕組みです。Livewire(Fortify)の場合、以下の順でファイルがコピーされ、後のレイヤーが前のレイヤーを上書きします。 この階層のおかげで「すべてのキットに共通する修正は Shared/ に、Livewire固有の修正は Livewire/ に加える」という明確なルールができています。

コントリビューションの流れ

スターターキットへのコントリビューションは、個別のスターターキットリポジトリではなく、このMaestroリポジトリで行います。
1

orchestratorディレクトリに移動してキットをビルドする

インタラクティブなプロンプトで対象キットと認証バリアントを選択します。フラグを使って直接指定することも可能です。
2

ビルドしたキットを起動する

Laravelの開発サーバーとファイルウォッチャーが同時に起動します。build/ ディレクトリで行った変更は自動的に kits/ の適切な場所へコピーされます。
3

変更を加えてテストする

build/ ディレクトリ内のファイルを編集します。ウォッチャーが変更を検知し、自動的に kits/ ディレクトリへ反映します。
4

PRを作成する

kits/ ディレクトリへの変更をコミットしてPRを作成します。マージされると、Maestroが自動的に変更を各スターターキットリポジトリへプッシュします。
build/ ディレクトリはgitignoreされています。変更はすべて build/ 内で行い、ウォッチャーに kits/ へ同期させてからコミットしてください。

その他の開発コマンド

リント

ブラウザテスト

ブラウザテストはPest + Playwrightで動作します。browser_tests/ ディレクトリに bootstrap/(共通設定)、common/(Fortify向け)、teams/(Teams向け)の3層構造でテストが整理されています。

フラグによる絞り込み

各コマンドは --livewire--react--svelte--vue フラグと --blank--fortify--workos--teams フラグを組み合わせて対象を絞り込めます。

WorkOS環境変数の設定

WorkOSバリアントをビルドして実行する場合は、orchestrator/.env にWorkOSのクライアントIDとAPIキーを設定します。ビルド時にこれらの値が build/ ディレクトリの .env ファイルにコピーされます。

現在の開発状況

  • GitHubリポジトリ: laravel/maestro
  • 正式リリース: なし(バージョンタグ・リリースは未公開)
  • 最終コミット: 2026年4月(アクティブに開発中)
  • 必要なPHPバージョン: ^8.2
  • Laravelバージョン: ^13.0
Maestroはエンドユーザー向けのパッケージではなく、Laravelチームおよびコントリビューター向けの開発インフラとして機能しています。スターターキット本体(laravel/starter-kit-react など)はMaestroによってこのモノレポから生成・管理されます。

laravel/maestro リポジトリ

スターターキットへのコントリビューションに興味がある方は、まずMaestroのREADMEをご確認ください。

Laravel スターターキット公式ドキュメント

スターターキット自体の使い方については公式ドキュメントを参照してください。
最終更新日 2026年4月5日