feat(metablog): JSON Schema draft-07 for site.json (ref #101)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
CyberMind-FR 2026-05-12 17:15:14 +02:00
parent 81f9c639a4
commit 77f8feef43

View File

@ -0,0 +1,20 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://apt.secubox.in/schema/metablog/site.json",
"title": "MetaBlogizer site.json",
"type": "object",
"required": ["name", "domain", "published"],
"additionalProperties": true,
"properties": {
"name": {"type": "string", "pattern": "^[a-z0-9][a-z0-9-]{0,62}$"},
"domain": {"type": "string", "format": "hostname"},
"published": {"type": "boolean"},
"version": {"type": ["string", "null"], "pattern": "^v[0-9]+\\.[0-9]+\\.[0-9]+$"},
"title": {"type": ["string", "null"]},
"description": {"type": ["string", "null"]},
"category": {"type": ["string", "null"]},
"streamlit_app": {"type": ["string", "null"], "description": "Name of the gandalf/streamlit-<X> repo on Gitea, if any"},
"tags": {"type": "array", "items": {"type": "string"}},
"last_updated": {"type": ["string", "null"], "format": "date-time"}
}
}