- skills/archify: vendored tt-a1i/archify 2.14.0 (MIT), pure Node 18+, zero deps - extensions/pi-mermaid: renders mermaid blocks as ASCII in TUI; deps beautiful-mermaid + mermaid - skills/project-diagramming-*: orchestration skills, per-project docs/ convention
75 lines
2.0 KiB
JSON
75 lines
2.0 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "https://github.com/tt-a1i/archify/schemas/common.schema.json",
|
|
"title": "Archify Shared Definitions",
|
|
"$defs": {
|
|
"id": {
|
|
"type": "string",
|
|
"pattern": "^[a-zA-Z][a-zA-Z0-9_-]*$"
|
|
},
|
|
"point": {
|
|
"type": "array",
|
|
"prefixItems": [
|
|
{ "type": "number" },
|
|
{ "type": "number" }
|
|
],
|
|
"items": false,
|
|
"minItems": 2,
|
|
"maxItems": 2
|
|
},
|
|
"componentType": {
|
|
"enum": ["frontend", "backend", "database", "cloud", "security", "messagebus", "external"]
|
|
},
|
|
"variant": {
|
|
"enum": ["default", "emphasis", "security", "dashed"]
|
|
},
|
|
"legendMode": {
|
|
"enum": ["auto", "all", "hidden"]
|
|
},
|
|
"legendEntry": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"minProperties": 1,
|
|
"properties": {
|
|
"label": { "type": "string", "minLength": 1, "maxLength": 80 },
|
|
"visible": { "type": "boolean" }
|
|
}
|
|
},
|
|
"guidedViews": {
|
|
"type": "array",
|
|
"maxItems": 5,
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["id", "label", "focus"],
|
|
"properties": {
|
|
"id": { "$ref": "#/$defs/id" },
|
|
"label": { "type": "string", "minLength": 1, "maxLength": 48 },
|
|
"focus": {
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": { "$ref": "#/$defs/id" }
|
|
},
|
|
"note": { "type": "string", "maxLength": 140 }
|
|
}
|
|
}
|
|
},
|
|
"cards": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["dot", "title", "items"],
|
|
"properties": {
|
|
"dot": { "enum": ["cyan", "emerald", "violet", "amber", "rose", "orange", "slate"] },
|
|
"title": { "type": "string", "minLength": 1 },
|
|
"items": {
|
|
"type": "array",
|
|
"items": { "type": "string" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|