# Blueprint YAML file autocompletion and validation in your favourite code editor

**URL:** <https://forum.getkirby.com/t/blueprint-yaml-file-autocompletion-and-validation-in-your-favourite-code-editor/25905>\
**Category:** Questions\
**Tags:** v4\
**Created:** [July 5, 2022, 10:13am UTC](https://forum.getkirby.com/t/blueprint-yaml-file-autocompletion-and-validation-in-your-favourite-code-editor/25905 "2022-07-05T10:13:08Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![bnomei](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/bnomei/32/775_2.png) [@bnomei](https://forum.getkirby.com/u/bnomei)\
**Post date:** [July 5, 2022, 10:13am UTC](https://forum.getkirby.com/t/blueprint-yaml-file-autocompletion-and-validation-in-your-favourite-code-editor/25905/1 "2022-07-05T10:13:08Z")

</div>

Like suggested by @kirbyzone on kirbys [idea tracker on nolt](https://kirby.nolt.io/366) a JSON Schema for Kirby would bring **autocompletion and validation** of the flexible blueprints to your code editor like SublimeText, PHPStorm or VSCode.

In the best case such a schema is published on the official JSON Schema store and thus becomes available in most editors automatically. But with Kirbys blueprints thats quiet a complex task. It took me more than 3000 lines of json to cover the

- four root [blueprint](https://getkirby.com/docs/reference/panel/blueprints) types (file, page, user, site),
- all [layout wrappers](https://getkirby.com/docs/guide/blueprints/layout) you can use in page blueprints (tabs, columns, sections, fields),
- all [sections](https://getkirby.com/docs/reference/panel/sections) (fields, files, info, pages, stats) and
- all 31 [fields](https://getkirby.com/docs/reference/panel/fields) including the new ones from v3.7

I created a preview version and would love to get your feedback and hope that the core team contributes as well – or even better – takes over this project one day.

This also ties in nicely with the highly requested (261 votes) [blueprint editor](https://kirby.nolt.io/20) since – well – your code editor will be able do most of that now. 😉

Follow the easy installation instructions from the repos readme to

1. clone/download repo then
2. tell your code editor where to find the schema file and to what folder to apply it to

> **[GitHub - bnomei/kirby3-schema: JSON Schema file for Kirby CMS blueprints](https://github.com/bnomei/kirby3-schema)**
>
> JSON Schema file for Kirby CMS blueprints

---

<div class="post-metadata">

**Author:** ![bnomei](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/bnomei/32/775_2.png) [@bnomei](https://forum.getkirby.com/u/bnomei)\
**Post date:** [November 8, 2022, 10:10pm UTC](https://forum.getkirby.com/t/blueprint-yaml-file-autocompletion-and-validation-in-your-favourite-code-editor/25905/2 "2022-11-08T22:10:24Z")

</div>

version 1.1 add support for object field that was introduced in k3.8.

---

<div class="post-metadata">

**Author:** ![bnomei](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/bnomei/32/775_2.png) [@bnomei](https://forum.getkirby.com/u/bnomei)\
**Post date:** [November 28, 2023, 4:04pm UTC](https://forum.getkirby.com/t/blueprint-yaml-file-autocompletion-and-validation-in-your-favourite-code-editor/25905/3 "2023-11-28T16:04:19Z")

</div>

version 4.0.0 added new features introduced in kirby 4 (released today).

> **[GitHub - bnomei/kirby3-schema: JSON Schema file for Kirby 3 and 4 Blueprints](https://github.com/bnomei/kirby3-schema)**
>
> JSON Schema file for Kirby 3 and 4 Blueprints. Contribute to bnomei/kirby3-schema development by creating an account on GitHub.

---

<div class="post-metadata">

**Author:** ![rapha](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/rapha/32/6376_2.png) [@rapha](https://forum.getkirby.com/u/rapha)\
**Post date:** [March 26, 2024, 10:36am UTC](https://forum.getkirby.com/t/blueprint-yaml-file-autocompletion-and-validation-in-your-favourite-code-editor/25905/4 "2024-03-26T10:36:17Z")

</div>

hi @bnomei

i tried to add the schema in phpstorm follwed the readme steps. Now i get the behavior that blueprints are marked and show me like before messages like \*\*Schema validation: Property ‘tabs’ is not allowed \*\* do you now this? Did i configure something wrong or is there a special intendation of the lines?

thanks for a hint

 ![Bildschirmfoto 2024-03-26 um 11.35.34](https://europe1.discourse-cdn.com/flex017/uploads/getkirby/original/2X/c/c503df3236686e2b61f2447386cfc4eddffb19b7.png)

---

<div class="post-metadata">

**Author:** ![bnomei](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/bnomei/32/775_2.png) [@bnomei](https://forum.getkirby.com/u/bnomei)\
**Post date:** [March 26, 2024, 4:14pm UTC](https://forum.getkirby.com/t/blueprint-yaml-file-autocompletion-and-validation-in-your-favourite-code-editor/25905/5 "2024-03-26T16:14:57Z")

</div>

hi @rapha  
depending on which blueprint you are editing the schema does not know about the context. see readme about adding the custom flag. like this for a pages blueprint.

```yaml
blueprint: page

#rest of your blueprint

```

also if you have something in the blueprint the schema does not understand the issue might bubble up to the first element (and report that).  
try adding things to the blueprint step by step.

it might well be that kirby allows something that the schema cant handle. feel free to create an issue on github if you manage to isolate the issue. thanks

---

<div class="post-metadata">

**Author:** ![rapha](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/rapha/32/6376_2.png) [@rapha](https://forum.getkirby.com/u/rapha)\
**Post date:** [April 23, 2024, 12:17pm UTC](https://forum.getkirby.com/t/blueprint-yaml-file-autocompletion-and-validation-in-your-favourite-code-editor/25905/6 "2024-04-23T12:17:49Z")

</div>

Hi @bnomei sorry for the late reply.

thank you very much for your answer!

i think i did everything right but found out that the problem occours when using tabs in blueprints. i have to check it more detailed.

cheers raph

---

<div class="post-metadata">

**Author:** ![bnomei](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/bnomei/32/775_2.png) [@bnomei](https://forum.getkirby.com/u/bnomei)\
**Post date:** [December 2, 2024, 11:02am UTC](https://forum.getkirby.com/t/blueprint-yaml-file-autocompletion-and-validation-in-your-favourite-code-editor/25905/7 "2024-12-02T11:02:17Z")

</div>

The most current Schema release includes one for Kirby 5 and its minor additions.

The setup takes less than a few minutes, and you will gain autocompletion and type-checking for Kirby’s YAML-based blueprint files right within your favourite IDE (VSCode, PHPStorm, Sublime Text, …).

 ![CleanShot 2024-12-02 at 10.59.31](https://europe1.discourse-cdn.com/flex017/uploads/getkirby/original/2X/5/596aaff356b71bf88858eb9bdf8e95f64f3eb536.png)  
 ![CleanShot 2024-12-02 at 11.01.48](https://europe1.discourse-cdn.com/flex017/uploads/getkirby/original/2X/4/4a0b4acb24826ffa5b05fa6aaa5408b086a94a8d.png)

> **[GitHub - bnomei/kirby3-schema: JSON Schema file for Kirby CMS blueprints](https://github.com/bnomei/kirby3-schema)**
>
> JSON Schema file for Kirby CMS blueprints

---

<div class="post-metadata">

**Author:** ![bnomei](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/bnomei/32/775_2.png) [@bnomei](https://forum.getkirby.com/u/bnomei)\
**Post date:** [December 4, 2024, 1:59pm UTC](https://forum.getkirby.com/t/blueprint-yaml-file-autocompletion-and-validation-in-your-favourite-code-editor/25905/8 "2024-12-04T13:59:55Z")

</div>

The Schema is more detailed than the screenshot above suggest.

It will, for example, based on the `type:` of a field suggest only the matching other properties.

Textareas might have `maxlength` while checkboxes only have `max` but no `maxlength`.

It will suggest valid strings for icons etc.

This will save you from browsing the online docs alot.

---

<div class="post-metadata">

**Author:** ![bnomei](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.getkirby.com/bnomei/32/775_2.png) [@bnomei](https://forum.getkirby.com/u/bnomei)\
**Post date:** [June 19, 2026, 2:19pm UTC](https://forum.getkirby.com/t/blueprint-yaml-file-autocompletion-and-validation-in-your-favourite-code-editor/25905/9 "2026-06-19T14:19:59Z")

</div>

v5.4.0 has been fully rewritten and now composes from manageable parts instead of one spaghetti source.  
It is battle tested against my original test-suite, many new blueprints pulled from the official starterkit and online docs. Over 1700+ tests ensure it provides auto-completion and validation with high alignment to Kirbys sourcecode.

**Quickstart: VSCode installation**

```json
"yaml.schemas": { 
    "https://raw.githubusercontent.com/bnomei/kirby-schema/refs/heads/main/kirby5-blueprints.schema.json": "site/blueprints/**/*.yml" 
}

```

> **[GitHub - bnomei/kirby-schema: JSON Schema file for Kirby CMS blueprints](https://github.com/bnomei/kirby-schema/)**
>
> JSON Schema file for Kirby CMS blueprints
