Skip to main content
Glama
schema.py4.56 kB
# chuk-motion/src/chuk_motion/components/content/StylizedWebPage/schema.py """StylizedWebPage component schema and Pydantic models.""" from typing import Literal from pydantic import BaseModel, Field from ...base import ComponentMetadata class StylizedWebPageProps(BaseModel): """Properties for StylizedWebPage component.""" title: str = Field("Website Title", description="Page title displayed in header") subtitle: str = Field("Tagline or description", description="Hero section subtitle") show_header: bool = Field(True, description="Show header/navbar") show_sidebar: bool = Field(False, description="Show sidebar navigation") show_footer: bool = Field(False, description="Show footer") header_text: str = Field("Navigation", description="Text in header nav area") sidebar_items: list[str] = Field( ["Dashboard", "Analytics", "Settings"], description="List of sidebar navigation items" ) content_lines: list[str] = Field( ["Welcome to our site", "Explore our features", "Get started today"], description="Main content block text lines", ) footer_text: str = Field("© 2024 Company", description="Footer text") theme: Literal["light", "dark"] = Field("light", description="Visual theme") accent_color: Literal["primary", "accent", "secondary"] = Field( "primary", description="Accent color theme" ) start_time: float | None = Field(None, description="When to show (seconds)") duration: float | None = Field(None, description="How long to show (seconds)") class Config: extra = "forbid" # Component metadata METADATA = ComponentMetadata( name="StylizedWebPage", description="Stylized webpage mockup with header, sidebar, content blocks, and footer", category="content", ) # MCP schema MCP_SCHEMA = { "description": "Stylized webpage mockup with header, sidebar, content blocks, and footer", "category": "content", "schema": { "title": { "type": "string", "default": "Website Title", "description": "Page title displayed in header", }, "subtitle": { "type": "string", "default": "Tagline or description", "description": "Hero section subtitle", }, "show_header": {"type": "boolean", "default": True, "description": "Show header/navbar"}, "show_sidebar": { "type": "boolean", "default": False, "description": "Show sidebar navigation", }, "show_footer": {"type": "boolean", "default": False, "description": "Show footer"}, "header_text": { "type": "string", "default": "Navigation", "description": "Text in header nav area", }, "sidebar_items": { "type": "array", "default": ["Dashboard", "Analytics", "Settings"], "description": "List of sidebar navigation items", }, "content_lines": { "type": "array", "default": ["Welcome to our site", "Explore our features", "Get started today"], "description": "Main content block text lines", }, "footer_text": { "type": "string", "default": "© 2024 Company", "description": "Footer text", }, "theme": { "type": "enum", "default": "light", "values": ["light", "dark"], "description": "Visual theme", }, "accent_color": { "type": "enum", "default": "primary", "values": ["primary", "accent", "secondary"], "description": "Accent color theme", }, "start_time": {"type": "float", "description": "When to show (seconds)"}, "duration": {"type": "float", "description": "How long to show (seconds)"}, }, "example": { "title": "My Amazing App", "subtitle": "Build something incredible", "show_header": True, "show_sidebar": True, "show_footer": True, "header_text": "Home • About • Contact", "sidebar_items": ["Dashboard", "Analytics", "Settings", "Profile"], "content_lines": [ "Welcome to our platform", "Discover powerful features", "Get started in minutes", ], "footer_text": "© 2024 My Company", "theme": "light", "accent_color": "primary", "start_time": 0.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