4.6 KiB
4.6 KiB
Template Database Schema Documentation
Overview
This document outlines the JSON schema for a template database system. The database manages templates for digital content generation, including both image and video capabilities, with references to external media files.
Schema Structure
Top-Level Structure
{
"timestamp": 1712331158783,
"templates": [
// Array of template items
]
}
Template Item Structure
Each template in the database has the following fields:
| Field | Type | Description |
|---|---|---|
| id | string | Date-time based unique identifier |
| name | string | Internal reference name (used for folder organization) |
| title | string | User-facing display title |
| description | string | Detailed description of the template |
| coverImage | string | Filename of template's cover image (jpg/png) |
| sampleVideo | string | Filename of sample video (mp4) |
| imagePrompt | string | Text prompt for image generation |
| imageEngine | string | API engine for image generation (currently "openai-o4") |
| videoPrompt | string | Text prompt for video generation |
| videoEngine | string | Engine for video generation (currently "luma" or "wan2") |
File Structure
Files referenced in the schema are organized in the following folder structure:
/templates/
/{name}/
/{coverImage}
/{sampleVideo}
Example JSON Database
{
"timestamp": 1712331158783,
"templates": [
{
"id": "2025-04-07T12-30-45-123Z",
"name": "sunset-beach",
"title": "Tropical Beach Sunset",
"description": "A beautiful tropical beach scene with palm trees silhouetted against a vibrant sunset over the ocean.",
"coverImage": "cover.jpg",
"sampleVideo": "sample.mp4",
"imagePrompt": "A stunning tropical beach at sunset, with silhouettes of palm trees, golden-orange sky reflecting on calm ocean waters, no people, photorealistic style.",
"imageEngine": "openai-o4",
"videoPrompt": "Camera slowly panning across a tropical beach at sunset, palm trees swaying gently in the breeze, golden light reflecting on gentle waves, cinematic lighting.",
"videoEngine": "luma"
},
{
"id": "2025-04-07T13-15-22-456Z",
"name": "space-nebula",
"title": "Cosmic Nebula Explorer",
"description": "A spectacular journey through colorful space nebulae and distant galaxies.",
"coverImage": "nebula-cover.png",
"sampleVideo": "space-journey.mp4",
"imagePrompt": "A breathtaking view of a colorful space nebula with stars, cosmic dust, and swirling gases in purple, blue and pink hues, ultra high definition, space photography style.",
"imageEngine": "openai-o4",
"videoPrompt": "Slow journey through a colorful cosmic nebula, moving past stars and swirling gases, gradual color shifts from purple to blue to pink, distant galaxies visible, ultra HD quality.",
"videoEngine": "wan2"
},
{
"id": "2025-04-07T14-22-18-789Z",
"name": "urban-future",
"title": "Futuristic Cityscape",
"description": "A hyper-modern cityscape with advanced architecture, flying vehicles, and holographic displays.",
"coverImage": "future-city.jpg",
"sampleVideo": "city-flythrough.mp4",
"imagePrompt": "Hyper-futuristic cityscape at dusk with neon lights, holographic billboards, flying vehicles, sleek skyscrapers, advanced technology, cyberpunk aesthetic but clean and utopian.",
"imageEngine": "openai-o4",
"videoPrompt": "Flying through a futuristic city at dusk, weaving between tall skyscrapers with holographic displays, flying vehicles passing by, neon lights reflecting off glass buildings, advanced technology visible everywhere.",
"videoEngine": "luma"
}
]
}
Usage Guidelines
-
Updating the Database:
- When updating the database, increment the top-level
timestampfield. - Use a consistent date-time format for new template IDs.
- When updating the database, increment the top-level
-
File References:
- Cover images should be placed in
/{name}/folder with the filename specified incoverImage. - Sample videos should be placed in
/{name}/folder with the filename specified insampleVideo.
- Cover images should be placed in
-
Engine Values:
imageEngineis currently limited to "openai-o4".videoEngineis currently limited to either "luma" or "wan2".
Validation
When implementing this schema, consider adding validation to ensure:
- All required fields are present
- Engine values are from the allowed set
- Referenced files exist in the expected locations
- IDs follow the expected date-time format pattern
This documentation provides the structural foundation for managing your template system's metadata and file references.