Kirby IDE Support
Quick start
- Follow the workflow below for a minimal, types-only IDE pass.
KB entry points
kirby://kb/scenarios/18-ide-supportkirby://kb/glossary/page-modelkirby://kb/glossary/template
Required inputs
- Target files and scope (templates/snippets/controllers/models).
- Whether to generate helpers or only add PHPDoc hints.
Minimal PHPDoc hints
/** @var Kirby\Cms\Site $site */
/** @var Kirby\Cms\Page $page */
- Place hints at the top of templates/snippets; keep them types-only.
Generation rule
- Add PHPDoc hints for a few files or local fixes.
- Generate IDE helpers when multiple templates/models lack types or for project-wide refresh.
Common pitfalls
- Generating helpers for a single missing type.
- Leaving stale helpers after blueprint or model changes.
Workflow
- Call
kirby:kirby_init, then check status withkirby:kirby_ide_helpers_status. - Inspect templates/snippets/controllers/models for missing hints:
kirby:kirby_templates_indexkirby:kirby_snippets_indexkirby:kirby_controllers_indexkirby:kirby_models_index
- Add minimal, types-only improvements:
@varhints in templates/snippets- typed controller closures
- ensure page models extend the correct base class
- If generating helpers, run
kirby:kirby_generate_ide_helpers(dryRun=true)first; ask before writing, then run withdryRun=false. - Re-run
kirby:kirby_ide_helpers_statusand summarize changes. - Search the KB with
kirby:kirby_search(example: "ide support").