Schema for recipe.json
Define a scheme for recipe.json to be make validation and statement completion work in Visual Studio
@sebastienros, how and where is it consumed?
On Orchard Core setup you have 3 choices. SaaS, The Blog, The Agency. Those are 3 recipes coming from "Themes" that should be renamed "Templates" in the future.
So I want to create my own theme. If I create recipe.json for it, I don't know what can be present in it as no scheme for it available, nor Visual Studio can help or check me.
Well, I understand your request. We should probably use a JSON Schema file to parse this JSON file and return proper data validation messages.
Creating a json schema is a very good idea.
I agree with this. Here is my use case:
I'm working on a continuous delivery project in which content types and default content changes need to be consistent, repeatable and automated across multiple environments. Recipes are perfect for this.
In this case, I would be hand-crafting incremental recipes as the project progresses. These recipes would be executed in full (in the case of a new/rebuild environment) or only new (in the case of a point release). Exporting a recipe from the admin UI for me is not valuable since it will have all the previous changes that I will have to filter out by hand.
In the end, my options are hand-crafted recipes or a modification to the recipe export functionality that will give me a differential recipe. The latter is unlikely, so I'm fine with hand-crafting.
Closing, now that the recipe documentation is available.
Documentation ≠ JSON Scheme
I would suggest to integrate the generation of a global schema file by using the gulp script we are using. Each module would create it's own 'recipe' schema with a well-known filename. Then we can generate the global one in the root folder, and commit it to source code so we can reference it universally.