Files
memefast/database/seeders/data/json/category/st1jsonschema.json.txt
2025-06-17 12:01:49 +08:00

69 lines
2.8 KiB
Plaintext

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "ST1JSON Schema",
"type": "object",
"properties": {
"category": {
"type": "object",
"required": ["name", "description", "keywords", "subcategories"],
"properties": {
"name": {
"type": "string",
"description": "The name of the main meme category (e.g. 'Work Life')"
},
"description": {
"type": "string",
"description": "A short overview of the category's theme or tone"
},
"keywords": {
"type": "array",
"items": {
"type": "string"
},
"description": "General tags to help filter or search within the category"
},
"subcategories": {
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"required": ["name", "description", "meme_angles", "keywords", "sample_captions"],
"properties": {
"name": {
"type": "string",
"description": "Subcategory title (e.g. 'Corporate')"
},
"description": {
"type": "string",
"description": "Explains the vibe, setting, or memeable themes of the subcategory"
},
"meme_angles": {
"type": "array",
"items": {
"type": "string"
},
"description": "Typical perspectives or scenes for memes in this subcategory"
},
"keywords": {
"type": "array",
"items": {
"type": "string"
},
"description": "Search tags or filters specific to the subcategory"
},
"sample_captions": {
"type": "array",
"items": {
"type": "string"
},
"description": "Sample captions (POV, one-liners, etc.) for seeding meme generation"
}
}
}
}
}
}
},
"required": ["category"]
}