{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "hms/schemas/project/project_v1.schema.json", "title": "HMS Project v1", "description": "PLAN.md §10, §24: Projektdatei mit schema_version und stabilen UUIDs. Phase 0: Kernfelder; Layer-/Effektschnitt wird in Phase 2 vollständig ausgebaut.", "type": "object", "required": ["schema_version", "id", "name", "created_at", "updated_at", "compositions"], "properties": { "schema_version": {"const": 1}, "id": {"type": "string", "format": "uuid"}, "name": {"type": "string", "minLength": 1}, "created_at": {"type": "string", "format": "date-time"}, "updated_at": {"type": "string", "format": "date-time"}, "settings": {"type": "object"}, "media_assets": {"type": "array", "items": {"type": "object"}}, "compositions": { "type": "array", "items": { "type": "object", "required": ["id", "name", "width", "height", "fps", "color_space", "layers"], "properties": { "id": {"type": "string", "format": "uuid"}, "name": {"type": "string"}, "width": {"type": "integer", "minimum": 16, "maximum": 8192}, "height": {"type": "integer", "minimum": 16, "maximum": 8192}, "fps": {"type": "number", "exclusiveMinimum": 0}, "color_space": {"enum": ["sRGB", "linear"]}, "background_color": {"type": "string"}, "duration": {"type": ["number", "null"]}, "layers": { "type": "array", "maxItems": 64, "items": { "type": "object", "required": ["id", "name", "layer_type"], "properties": { "id": {"type": "string", "format": "uuid"}, "name": {"type": "string"}, "enabled": {"type": "boolean"}, "layer_type": {"enum": ["media", "image", "solid", "generator", "adjustment", "group"]}, "opacity": {"type": "number", "minimum": 0, "maximum": 1}, "blend_mode": {"enum": ["normal", "add", "multiply", "screen", "lighten", "darken", "difference", "overlay", "alpha_premultiplied"]}, "effects": { "type": "array", "maxItems": 2, "items": {"type": "object"} } } } } } } }, "scenes": {"type": "array", "items": {"type": "object"}}, "timelines": {"type": "array", "items": {"type": "object"}}, "outputs": {"type": "array", "items": {"type": "object"}}, "control_bindings": {"type": "array", "items": {"type": "object"}}, "plugin_requirements": {"type": "array", "items": {"type": "object"}} } }