ide.json: Overview

Laravel Idea allows to highly customize many aspects of it's job, like completions, view paths, blade component sources, blade directives and a lot of other stuff. It can be done by adding a special ide.json file to the project. This can be super useful for Laravel package creators.


Simple example of ide.json:

{
    "$schema": "https://laravel-ide.com/schema/laravel-ide-v2.json",
    "completions": [
        {
            "complete": "routeName",
            "condition": [
                {
                  "functionNames": ["routeForTenant"],
                  "parameters": [1]
                }
            ]
        }
    ]
}

"$schema" value is not required, but it will add a full completion for all JSON keys during editing. After adding this file to the project, Laravel Idea will start to complete route names for the first parameter of every routeForTenant function call:



Let's review the full list of ide.json features:

Completion
Code generations - not ready yet
Views - not ready yet
Blade components - not ready yet
Routing support - not ready yet