feat: add concept field to lesson schema

Add 'concept' object to lesson schema with:
- explanation: required string for 2-4 sentence concept explanation
- diagram: optional string for SVG/ASCII art diagrams
- containerVsItem: optional string for Flexbox-specific distinctions
This commit is contained in:
2026-01-11 04:29:07 +01:00
parent 760690cdf1
commit 4486078599

View File

@@ -99,6 +99,26 @@
"type": "string",
"description": "ID of the container element for the preview"
},
"concept": {
"type": "object",
"description": "Conceptual explanation of WHY the CSS/HTML works, not just syntax",
"properties": {
"explanation": {
"type": "string",
"description": "Beginner-friendly explanation (2-4 sentences) of the concept behind the lesson"
},
"diagram": {
"type": "string",
"description": "Optional SVG markup or ASCII art diagram to visualize the concept"
},
"containerVsItem": {
"type": "string",
"description": "Optional explanation for Flexbox/Grid lessons to clarify container vs item distinction"
}
},
"required": ["explanation"],
"additionalProperties": false
},
"validations": {
"type": "array",
"description": "Rules to validate user input",