Autocompletion
Get intelligent code suggestions as you type.
Overview
Laradebug provides autocompletion for:
- PHP classes and namespaces
- Laravel facades and helpers
- Eloquent models and relationships
- Class methods and properties
How It Works
As you type, suggestions appear automatically:
User::wh|
┌─────────────────────────┐
│ where($column, $value) │
│ whereIn($column, $vals) │
│ whereNull($column) │
│ whereHas($relation) │
└─────────────────────────┘Triggering Suggestions
Automatic
Suggestions appear when typing:
- After
::(static methods) - After
->(instance methods) - After
\(namespaces) - After typing 2+ characters
Manual
Trigger suggestions manually:
- Press
Ctrl + Space - Useful when automatic popup is dismissed
Class Autocompletion
Model Classes
Type a model name to see suggestions:
Us|
┌─────────────────────────┐
│ User │
│ UserController │
│ UserFactory │
│ UserPolicy │
└─────────────────────────┘Full Namespaces
For non-imported classes:
App\Models\|
┌─────────────────────────┐
│ User │
│ Post │
│ Comment │
│ Order │
└─────────────────────────┘Method Autocompletion
Static Methods
After :::
User::find|
┌─────────────────────────────────┐
│ find($id) │
│ findOrFail($id) │
│ findMany($ids) │
│ findOrNew($id) │
└─────────────────────────────────┘Instance Methods
After ->:
$user->pos|
┌─────────────────────────────────┐
│ posts() → HasMany │
│ postalCode → string │
└─────────────────────────────────┘Laravel Facades
All Laravel facades are available:
Cache::|
┌─────────────────────────────────┐
│ get($key) │
│ put($key, $value, $ttl) │
│ remember($key, $ttl, $callback) │
│ forget($key) │
│ flush() │
└─────────────────────────────────┘Eloquent Features
Query Builder
Full query builder support:
User::where('active', true)->|
┌───────────────────────┐
│ get() │
│ first() │
│ count() │
│ pluck($column) │
│ orderBy($column) │
│ limit($count) │
└───────────────────────┘Relationships
Relationship methods show return types:
$user->|
┌─────────────────────────────────────┐
│ posts() → HasMany<Post> │
│ profile() → HasOne<Profile> │
│ roles() → BelongsToMany<Role>│
└─────────────────────────────────────┘Scopes
Model scopes appear in suggestions:
php
// In your model
public function scopeActive($query) { ... }
public function scopeRecent($query) { ... }User::|
┌─────────────────────────┐
│ active() │
│ recent() │
│ where() │
└─────────────────────────┘Property Suggestions
Model Attributes
Based on your database schema:
$user->|
┌─────────────────────────────┐
│ id → int │
│ name → string │
│ email → string │
│ created_at → Carbon │
└─────────────────────────────┘Casts
Casted properties show their PHP type:
php
// In model
protected $casts = ['settings' => 'array'];$user->settings → arrayHelper Functions
Laravel helpers are available:
colle|
┌─────────────────────────────────┐
│ collect($items) │
│ ─────────────────────────────── │
│ Create a new Collection │
└─────────────────────────────────┘Settings
Enable/Disable
Settings → Editor → AutocompletionTrigger Delay
Adjust how quickly suggestions appear:
Settings → Editor → Autocomplete DelayLower = faster (may feel intrusive) Higher = slower (must type more first)
Minimum Characters
Set minimum characters before suggestions:
Settings → Editor → Min Autocomplete CharsDefault: 2 characters
Performance
Project Scanning
Laradebug scans your project for:
- Model classes
- Relationships
- Scopes
- Custom classes
Scan happens on project load.
Related Features
- Code Execution — Use completed code
- AI Assistant — AI-powered suggestions
- Code Snippets — Pre-written code blocks