Laravel MaestroEnterprise-grade Laravel intelligence for VS Code — zero helper files, instantaneous completions, visual Eloquent inspectors, and full PhpStorm-class IDE support for modern Laravel applications. Features⚡ Intelligent Auto-Import & Namespace Resolver
🗄 Eloquent Visual Model Inspector & Schema Manager
📦 Universal API Resource Generator (
|
| Command | Description | Shortcut |
|---|---|---|
Import Class |
Imports class or facade under cursor, or opens searchable class palette | Cmd+Alt+I / Ctrl+Alt+I |
Auto-Import All Classes |
Scans file and batch-imports all unresolved models, facades, and classes | Cmd+Alt+Shift+I / Ctrl+Alt+Shift+I |
Generate API Resource |
Generates schema-aware and relation-aware JsonResource for a model |
— |
Generate Model |
With optional migration, factory, resource, controller, policy | — |
Generate Controller |
Resource, API, Invokable, or Plain; optional model binding | — |
Generate Form Request |
Stubbed authorize() + rules() |
— |
Generate Job |
Queueable ShouldQueue job |
— |
Generate Event |
Dispatchable event | — |
Generate Listener |
Event listener stub | — |
Generate Mailable |
Full Mailable with envelope() + content() |
— |
Generate Policy |
All seven CRUD policy methods; optional model binding | — |
Populate Fillable |
Auto-populate $fillable array or #[Fillable] attribute from migration |
— |
Open Tinker Pad |
Interactive Laravel scratchpad console | — |
Open Model UI |
Visual Eloquent model schema, relationships, and casts inspector | — |
🚀 Getting Started
Prerequisites
- VS Code
^1.90.0 - PHP
^8.1inPATH(or configured vialaravelMaestro.phpExecutable) - A Laravel project with an
artisanfile in the workspace root
Installation
- Install from the VS Code Marketplace:
ext install laravel-maestro.laravel-maestro - Open your Laravel project folder.
- The extension activates automatically when PHP/Blade files or
artisan/composer.jsonare detected. - Watch the status bar for
Maestro [12R · 5M](routes · models).
First Run
The extension performs two indexing passes on activation:
- Static AST pass (~2–5s): walks all
*.phpfiles (excludingvendor/), builds the symbol table. - Runtime pass (~3–8s): executes
extract.phpas a child process to get live routes, DB schema, and config.
⚙️ Configuration
| Setting | Default | Description |
|---|---|---|
laravelMaestro.phpExecutable |
"php" |
Path to PHP binary |
laravelMaestro.runtimeExtractionTimeout |
10000 |
Max ms for PHP extractor |
laravelMaestro.enableEloquentCompletion |
true |
Eloquent virtual methods & columns |
laravelMaestro.enableRouteCompletion |
true |
Route name completions |
laravelMaestro.enableBladeCompletion |
true |
Blade directives & components |
laravelMaestro.enableInlayHints |
true |
Ghost text type hints |
laravelMaestro.enableCodeLens |
true |
Route and model badges |
laravelMaestro.enableLivewireCompletion |
true |
Livewire component completions |
laravelMaestro.enableInertiaCompletion |
true |
Inertia.js page completions |
laravelMaestro.enableFilamentCompletion |
true |
Filament field & column completions |
laravelMaestro.enableDiagnostics |
true |
Live diagnostics for routes, views, & components |
laravelMaestro.enablePackageProviders |
true |
Spatie, Pennant, Nova, Dusk, Modules providers |
laravelMaestro.enableEnumCompletion |
true |
PHP Enum case completions & hovers |
laravelMaestro.enableAutoImport |
true |
Enable auto-import code actions, quick fixes, and commands |
laravelMaestro.fillableStyle |
"array" |
Default fillable generator style ("array" or "attribute") |
laravelMaestro.modulesPath |
"Modules" |
Root directory for nWidart/laravel-modules |
laravelMaestro.aiDefaultProvider |
"openai" |
Default AI provider for Laravel 13 AI SDK |
laravelMaestro.enumDirectories |
["app/Enums", ...] |
Directories to scan for PHP Enum definitions |
laravelMaestro.excludePatterns |
["vendor/**", ...] |
Glob patterns to skip |
laravelMaestro.lruCacheSize |
500 |
Max AST entries in cache |
laravelMaestro.environment |
"auto" |
Execution environment ("auto", "local", "sail", "docker", "wsl", "ddev", "lando") |
laravelMaestro.dockerService |
"laravel.test" |
Container service name for Docker / Sail |
laravelMaestro.dockerComposeCommand |
"docker compose" |
Command used to invoke Docker Compose |
laravelMaestro.wslDistribution |
"" |
Specific WSL distribution name (optional) |
📖 Developer & Technical Documentation
All deep technical, structural, and contribution guidelines are located in the docs/ directory:
- Architecture & Hybrid Indexing — In-depth details on the Static AST Parser, dynamic extractor, workspace contexts, and caching architecture.
- Development Setup Guide — Requirements, local compilation commands, debugging inside VS Code, testing suites, and packaging commands.
- PHP Worker Specification — Complete details on sandboxing, safe bootstrapping, database compatibility, execution constraints, and payload formats of the background PHP worker.
- Custom Helper Extensibility — Documenting how to configure an
ide.jsonfile in your project root to register custom helper completions. - Extending the Extension — Guide on contributing, writing new completion providers, registering new commands, and following performance rules.
📝 Change Log
See CHANGELOG.md for full release history and release notes.
v1.3.0
- Windows Path & Quoting Resiliency: Normalizes path separators for migration ⇄ model navigation, CodeLens, and Livewire/Nova contexts; fixes nested Livewire view-to-component resolution (
admin.users.table); quotes PHP paths containing spaces in PowerShell (&operator) and.bat/.cmdwrappers; and tolerates pasted quotes inphpExecutable. - Eliminated False-Positive Diagnostics: Kebab-case and class-based Blade components,
<x-slot>,<x-dynamic-component>,config()subtree keys,Route::view()URIs, and nested translation keys are no longer flagged as unknown. - Static Call-Chain Route Parser: Comprehensive fallback parser resolves route group hierarchies (prefix, name, middleware, controller), leading attribute chains,
Route::match, nested resources, and/apiprefix mounts when PHP is unavailable. - Route Parsing Fixes:
Route::apiResourceexpands to real REST routes,->only()and->except()constraints are honored, and parameter names match model names (posts/{post}). - Translation Indexing Enhancements: Preserves parent keys for nested language arrays (
messages.auth.failed), indexes subfolder groups and legacyresources/lang/, and ignores vendor overrides. - More Accurate Eloquent Indexing: Relationships with chained calls (
->hasMany(...)->latest()) are detected, and deleted or renamed classes are cleanly purged from the index. - Blade
@propsFix: Distinguishes required vs. optional props with default values (including nested array defaults). - Exclude Patterns:
vendor/**no longer excludesvendors/, and**/dir/**patterns work across all indexers. - Docker Tinker Guard: Accurately verifies that your specific Compose service is running, rather than any active container.
- Tooling & Engine: Requires VS Code
^1.90.0(with@types/vscode ~1.100.0), upgrades toolchain to TypeScript 7 and ESLint 10, and expands test coverage to 322 passing tests (with CRLF and Windows regression suites).
v1.2.0
- Universal WSL & Container Architecture: Zero-config auto-detection for Laravel Sail, Docker Compose, DDEV, Lando, and WSL UNC paths (
\\wsl$\...,\\wsl.localhost\...). - Sandboxed Container Runtime Extraction: Extracts Eloquent schemas, routes, and config inside Docker containers via in-project cache workers (
storage/framework/cache/.maestro_extract.php). - Direct Container Route Fallback: Headless
artisan route:list --jsonextraction executed directly inside running containers or WSL distros. - Environment-Aware Terminal Runners: Integrated terminal runs Artisan and migrations automatically via
./vendor/bin/sail artisan,vendor\bin\sail.bat artisan,docker compose exec <service> php artisan,wsl php artisan,ddev artisan, orlando artisan. - Container & WSL Tinker Pad: Real-time evaluation of PHP & Eloquent snippets inside containers and WSL with actionable diagnostics if containers are stopped.
- Windows 11 Route Explorer Resilience: Multi-path PHP discovery (Laravel Herd, Scoop, Laragon, Chocolatey, XAMPP),
.bat/.cmdshell wrapper support, 2s DB connection timeout guards, output buffer isolation, and manual webview refresh.
v1.1.0
- Intelligent Auto-Import: QuickFix lightbulb actions, one-click
Cmd+Alt+I, batchautoImportAll, PSR-12 sorting, and 38+ Laravel Facades. - Tinker Pad Runtime Auto-Aliasing: Built-in autoloader resolving
User::...andDB::...without manual imports, plus 10 curated snippets and SQL keyword highlighting. - Eloquent Model Inspector UI/UX: Live metric chips, instant facet filters (
[Fillable],[Nullable],[Keys]), dirty cast states, andCmd+Sshortcuts. - Route Explorer UI/UX: Click-to-filter middleware badges, syntax-highlighted controller actions, and keyboard search hints.
- Critical Audit Fixes: Resolved controller action casing corruption, Tinker Pad premature process exits, and duplicate Blade component edits.
v1.0.0
- Eloquent Model Visual Inspector (Model UI): Schema viewer, fillables, casts, and relationship generator.
- Universal API Resource Generator: Schema-aware attribute mapping, eager-loaded relationships, and navigation.
- Route Explorer Webview: Interactive route table with method filtering, search, and vendor class navigation.
- Zero-Disk Tinker Pad: Real-time scratchpad console with non-exiting
dd()anddump(). - Laravel 13 AI & PHP Enums: Scaffolding for AI agents/tools and full enum completions.
- Modern Vector UI/UX: Replaced all emojis with crisp VS Code Codicons and SVGs.
📄 License
Proprietary / Commercial License © Laravel Maestro. All rights reserved. Please refer to LICENSE.md for full terms and conditions.