Skip to main content
Glama
schema.py3.07 kB
# chuk-motion/src/chuk_motion/components/overlays/LowerThird/schema.py """LowerThird component schema and Pydantic models.""" from typing import Literal from pydantic import BaseModel, Field from ...base import ComponentMetadata class LowerThirdProps(BaseModel): """Properties for LowerThird component.""" name: str = Field(description="Main name/text (larger)", min_length=1) title: str | None = Field(None, description="Subtitle/title (smaller, below name)") variant: Literal["minimal", "standard", "glass", "bold", "animated"] | None = Field( "glass", description="Visual style" ) position: ( Literal["bottom_left", "bottom_center", "bottom_right", "top_left", "top_center"] | None ) = Field("bottom_left", description="Screen position") start_time: float = Field(description="When to show (seconds)", ge=0.0) duration: float | None = Field(5.0, description="How long to show (seconds)", gt=0.0) class Config: extra = "forbid" # Component metadata METADATA = ComponentMetadata( name="LowerThird", description="Name plate overlay with title and subtitle (like TV graphics)", category="overlay", ) # MCP schema (for backward compatibility with MCP tools list) MCP_SCHEMA = { "description": "Name plate overlay with title and subtitle (like TV graphics)", "category": "overlay", "variants": { "minimal": "Simple text on subtle background", "standard": "Text with clean bar background", "glass": "Glassmorphism effect with blur", "bold": "High contrast with accent colors", "animated": "Dynamic sliding animation", }, "positions": { "bottom_left": "Bottom left corner (standard TV position)", "bottom_center": "Bottom center", "bottom_right": "Bottom right corner", "top_left": "Top left corner", "top_center": "Top center", }, "schema": { "name": {"type": "string", "required": True, "description": "Main name/text (larger)"}, "title": { "type": "string", "required": False, "description": "Subtitle/title (smaller, below name)", }, "variant": { "type": "enum", "default": "glass", "values": ["minimal", "standard", "glass", "bold", "animated"], "description": "Visual style", }, "position": { "type": "enum", "default": "bottom_left", "values": ["bottom_left", "bottom_center", "bottom_right", "top_left", "top_center"], "description": "Screen position", }, "start_time": {"type": "float", "required": True, "description": "When to show (seconds)"}, "duration": {"type": "float", "default": 5.0, "description": "How long to show (seconds)"}, }, "example": { "name": "Dr. Sarah Chen", "title": "AI Researcher, Stanford", "variant": "glass", "position": "bottom_left", "start_time": 2.0, "duration": 5.0, }, }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/chrishayuk/chuk-mcp-remotion'

If you have feedback or need assistance with the MCP directory API, please join our Discord server