The file should be a JSON array of routes. Route entries with name are recognized. Controller info is optional; navigation targets the route registration itself.
Usage
In your JS/TS/React/Vue file, place the caret on route('your.route')
Ctrl+Click (Windows/Linux) or Cmd+Click (macOS) to jump to the route definition
To refresh routes: run “Ziggy: Update Routes” from the Command Palette
Command
ziggy.updateRoutes — regenerates storage/routes.json and reloads
Requires named routes (->name('...')) in your routes files
Grouped name prefixes are not resolved; the extension looks for a final ->name('full.name') occurrence
Multi-line route chains are supported per line; if your ->name('...') is on another line, you may need to reformat or open a request to improve detection
Behavior details
Go to Definition always navigates to the route registration in your routes files (not to controllers). This matches how front-end usage maps to named routes.
Troubleshooting
No underline on route('...'):
Make sure the file language is JavaScript/TypeScript/React/Vue.
Ensure the first argument is a string literal (no variables/template strings).
Confirm your workspace root is the Laravel project containing storage/routes.json and routes/.