Open-GAMMA / constants.py
openfree's picture
Upload 3 files
432e12b verified
# constants.py
"""Constants and configurations for PPT Generator"""
# Example templates (English and Korean versions)
EXAMPLE_TOPICS = {
"English": {
"Business Proposal": "AI-powered Customer Service Automation Platform Investment Proposal",
"Product Launch": "Smart Home IoT Security System New Product Launch",
"Project Report": "Digital Transformation Project Q3 Performance Report",
"Strategy Planning": "2025 Global Market Entry Strategy Development"
},
"Korean": {
"Business Proposal": "AI ๊ธฐ๋ฐ˜ ๊ณ ๊ฐ ์„œ๋น„์Šค ์ž๋™ํ™” ํ”Œ๋žซํผ ํˆฌ์ž ์ œ์•ˆ",
"Product Launch": "์Šค๋งˆํŠธ ํ™ˆ IoT ๋ณด์•ˆ ์‹œ์Šคํ…œ ์‹ ์ œํ’ˆ ๋Ÿฐ์นญ",
"Project Report": "๋””์ง€ํ„ธ ์ „ํ™˜ ํ”„๋กœ์ ํŠธ 3๋ถ„๊ธฐ ์„ฑ๊ณผ ๋ณด๊ณ ",
"Strategy Planning": "2025๋…„ ๊ธ€๋กœ๋ฒŒ ์‹œ์žฅ ์ง„์ถœ ์ „๋žต ์ˆ˜๋ฆฝ"
}
}
# Audience types definition (English)
AUDIENCE_TYPES = {
"Executives/C-Level": {
"description": "C-level executives, decision makers",
"tone": "Strategic, results-focused, ROI emphasis",
"focus": "Business value, ROI, strategic impact"
},
"Investors": {
"description": "VCs, angel investors, institutional investors",
"tone": "Data-driven, growth potential, market opportunities",
"focus": "Market size, growth rate, competitive advantage, exit strategy"
},
"Technical Team": {
"description": "Developers, engineers, IT professionals",
"tone": "Technical, specific, practical",
"focus": "Tech stack, architecture, implementation, performance"
},
"General Staff": {
"description": "Team members, practitioners",
"tone": "Friendly, practical, collaboration-focused",
"focus": "Execution plan, roles, processes, collaboration"
},
"Customers/Partners": {
"description": "B2B customers, business partners",
"tone": "Trustworthy, professional, benefit-focused",
"focus": "Customer value, benefits, case studies, support"
},
"General Public": {
"description": "B2C customers, general users",
"tone": "Easy and friendly, easy to understand",
"focus": "Ease of use, benefits, pricing, differentiation"
}
}
# Design themes definition
DESIGN_THEMES = {
"Minimal Light": {
"name": "Minimal Light",
"description": "Bright and clean minimal design",
"background": (250, 250, 252),
"title_color": (33, 37, 41),
"subtitle_color": (52, 58, 64),
"text_color": (73, 80, 87),
"accent_color": (0, 123, 255),
"box_fill": (255, 255, 255),
"box_opacity": 0.95,
"shadow": True,
"gradient": False
},
"Modern Gradient": {
"name": "Modern Gradient",
"description": "Smooth gradients with modern feel",
"background": (245, 247, 250),
"title_color": (25, 42, 86),
"subtitle_color": (68, 85, 102),
"text_color": (85, 102, 119),
"accent_color": (103, 58, 183),
"box_fill": (249, 250, 251),
"box_opacity": 0.9,
"shadow": True,
"gradient": True
},
"Dark Elegance": {
"name": "Dark Elegance",
"description": "Sophisticated dark mode design",
"background": (25, 25, 35),
"title_color": (240, 240, 245),
"subtitle_color": (200, 200, 210),
"text_color": (170, 170, 180),
"accent_color": (0, 188, 212),
"box_fill": (35, 35, 45),
"box_opacity": 0.85,
"shadow": False,
"gradient": False
},
"Nature Green": {
"name": "Nature Green",
"description": "Eco-friendly green theme",
"background": (242, 248, 244),
"title_color": (27, 67, 50),
"subtitle_color": (45, 106, 79),
"text_color": (64, 125, 98),
"accent_color": (76, 175, 80),
"box_fill": (255, 255, 255),
"box_opacity": 0.92,
"shadow": True,
"gradient": False
},
"Corporate Blue": {
"name": "Corporate Blue",
"description": "Professional business style",
"background": (244, 247, 252),
"title_color": (13, 71, 161),
"subtitle_color": (25, 118, 210),
"text_color": (42, 63, 84),
"accent_color": (33, 150, 243),
"box_fill": (255, 255, 255),
"box_opacity": 0.95,
"shadow": True,
"gradient": False
}
}
# Style templates definition
STYLE_TEMPLATES = {
"Title Slide (Hero)": {
"name": "Title Slide",
"description": "Impactful hero image for title slide",
"use_case": "Cover, Title",
"example": "A dramatic wide-angle view of a modern glass skyscraper reaching into clouds with golden sunset lighting, symbolizing growth and ambition. Ultra-realistic photography style, cinematic composition, lens flare, professional corporate aesthetic"
},
"Thank You Slide": {
"name": "Closing Slide",
"description": "Elegant closing slide design with conclusion",
"use_case": "Presentation closing",
"example": "Abstract elegant background with soft gradient from deep blue to purple, golden particles floating like celebration confetti, subtle light rays, with space for conclusion text. Minimalist, professional, warm feeling"
},
"3D Style (Pixar-like)": {
"name": "3D Style",
"description": "Pixar-esque 3D render with volumetric lighting",
"use_case": "Cover, Vision, Future concept",
"example": "A fluffy ginger cat wearing a tiny spacesuit, floating amidst a vibrant nebula in a 3D render. The cat is gazing curiously at a swirling planet with rings made of candy. Background is filled with sparkling stars and colorful gas clouds, lit with soft, volumetric lighting. Style: Pixar-esque, highly detailed, playful. Colors: Deep blues, purples, oranges, and pinks. Rendered in Octane, 8k resolution."
},
"Elegant SWOT Quadrant": {
"name": "SWOT Analysis",
"description": "Flat-design 4-grid layout with minimal shadows",
"use_case": "Current state analysis, Strategy evaluation",
"example": "Elegant SWOT quadrant: flat-design 4-grid on matte-white backdrop, thin pastel separators, top-left 'Strengths' panel shows glowing shield icon and subtle motif, top-right 'Weaknesses' panel with cracked chain icon in soft crimson, bottom-left 'Opportunities' panel with sunrise-over-horizon icon in optimistic teal, bottom-right 'Threats' panel with storm-cloud & lightning icon in deep indigo, minimal shadows, no text, no watermark, 16:9, 4K"
},
"Colorful Mind Map": {
"name": "Mind Map",
"description": "Hand-drawn educational style with vibrant colors",
"use_case": "Brainstorming, Idea organization",
"example": "A handrawn colorful mind map diagram: educational style, vibrant colors, clear hierarchy, golden ratio layout. Central concept with branching sub-topics, each branch with unique color coding, organic flowing connections, doodle-style icons for each node"
},
"Business Workflow": {
"name": "Business Process",
"description": "End-to-end business workflow with clear phases",
"use_case": "Process explanation, Step-by-step progress",
"example": "A detailed hand-drawn diagram illustrating an end-to-end business workflow with Market Analysis, Strategy Development, Product Design, Implementation, and Post-Launch Review phases. Clear directional arrows, iconography for each component, vibrant educational yet professional style",
"is_process_flow": True
},
"Industrial Design": {
"name": "Product Design",
"description": "Sleek industrial design concept sketch",
"use_case": "Product introduction, Concept design",
"example": "A sleek industrial design concept: Curved metallic body with minimal bezel, Touchscreen panel for settings, Modern matte black finish, Hand-drawn concept sketch style with annotations and dimension lines"
},
"3D Bubble Chart": {
"name": "Bubble Chart",
"description": "Clean 3D bubble visualization",
"use_case": "Comparative analysis, Positioning",
"example": "3-D bubble chart on clean white 2ร—2 grid, quadrant titles hidden, four translucent spheres in lime, azure, amber, magenta, gentle depth-of-field, modern consulting aesthetic, no text, 4K"
},
"Timeline Ribbon": {
"name": "Timeline",
"description": "Horizontal ribbon timeline with cyber-futuristic vibe",
"use_case": "Schedule, Roadmap, Milestones",
"example": "Horizontal ribbon timeline, milestone pins glowing hot pink on charcoal, year markers as circles, faint motion streaks, cyber-futuristic vibe, no text, 1920ร—1080"
},
"Risk Heat Map": {
"name": "Heat Map",
"description": "Risk assessment heat map with gradient colors",
"use_case": "Risk analysis, Prioritization",
"example": "Risk Heat Map: square grid, smooth gradient from mint to fire-red, cells beveled, simple legend strip hidden, long subtle shadow, sterile white frame, no text"
},
"Pyramid/Funnel": {
"name": "Funnel Chart",
"description": "Multi-layer gradient funnel visualization",
"use_case": "Step-by-step reduction, Core extraction",
"example": "Pyramid / Funnel: 5-layer gradient funnel narrowing downwards, top vivid sky-blue, mid mint-green, bottom sunset-orange, glass reflection, minimal background, no text"
},
"KPI Dashboard": {
"name": "Dashboard",
"description": "Dark-mode analytics dashboard with sci-fi interface",
"use_case": "Performance metrics, Results dashboard",
"example": "KPI Dashboard: Dark-mode analytic dashboard, three glass speedometers glowing neon lime, two sparkline charts under, black glass background, sci-fi interface, no text, 4K"
},
"Value Chain": {
"name": "Value Chain",
"description": "Horizontal value chain with industrial look",
"use_case": "Value chain, Business model",
"example": "Value Chain Diagram: Horizontal value chain blocks, steel-blue gradient bars with subtle bevel, small gear icons above each segment, sleek industrial look, shadow cast, no text"
},
"Gantt Chart": {
"name": "Gantt Chart",
"description": "Hand-drawn style Gantt chart with playful colors",
"use_case": "Project schedule, Task management",
"example": "Gantt Chart: Hand-drawn style Gantt bars sketched with vibrant markers on dotted grid notebook page, sticky-note color palette, playful yet organized, perspective tilt, no text"
},
"Mobile App Mockup": {
"name": "App Mockup",
"description": "Clean wireframe for mobile app design",
"use_case": "App/Web UI, Screen design",
"example": "MOCKUP DESIGN: A clean hand-drawn style wireframe for a mobile app with Title screen, Login screen, Dashboard with sections, Bottom navigation bar, minimalist design with annotations"
},
"Flowchart": {
"name": "Flowchart",
"description": "Vibrant flowchart with minimalistic icons",
"use_case": "Decision making, Process flow",
"example": "FLOWCHART DESIGN: A hand-drawn style flowchart, vibrant colors, minimalistic icons showing process flow from START to END with decision points, branches, and clear directional arrows",
"is_process_flow": True
}
}
# PPT templates definition (English names)
PPT_TEMPLATES = {
"Business Proposal": {
"description": "For investment pitches and business proposals",
"core_slides": [
{"title": "Contents", "style": "Flowchart", "prompt_hint": "Presentation structure"},
{"title": "Problem Definition", "style": "Colorful Mind Map", "prompt_hint": "Current market problems"},
{"title": "Current Analysis", "style": "Elegant SWOT Quadrant", "prompt_hint": "Strengths, Weaknesses, Opportunities, Threats"},
{"title": "Solution", "style": "Industrial Design", "prompt_hint": "Product/Service concept"},
{"title": "Process", "style": "Business Workflow", "prompt_hint": "Implementation steps"},
{"title": "Timeline", "style": "Timeline Ribbon", "prompt_hint": "Key milestones"}
],
"optional_slides": [
{"title": "Market Size", "style": "3D Bubble Chart", "prompt_hint": "Market opportunity and growth"},
{"title": "Competition Analysis", "style": "Risk Heat Map", "prompt_hint": "Competitor positioning"},
{"title": "Business Model", "style": "Value Chain", "prompt_hint": "Revenue structure"},
{"title": "Team Introduction", "style": "Colorful Mind Map", "prompt_hint": "Core team and capabilities"},
{"title": "Financial Plan", "style": "KPI Dashboard", "prompt_hint": "Expected revenue and P&L"},
{"title": "Risk Management", "style": "Risk Heat Map", "prompt_hint": "Key risks and mitigation"},
{"title": "Partnership", "style": "Value Chain", "prompt_hint": "Strategic alliances"},
{"title": "Technology Stack", "style": "Industrial Design", "prompt_hint": "Core technology architecture"},
{"title": "Customer Cases", "style": "Industrial Design", "prompt_hint": "Success stories"},
{"title": "Growth Strategy", "style": "Timeline Ribbon", "prompt_hint": "Expansion plan"},
{"title": "Investment Use", "style": "Pyramid/Funnel", "prompt_hint": "Fund allocation plan"},
{"title": "Exit Strategy", "style": "Timeline Ribbon", "prompt_hint": "Exit plan"}
]
},
"Product Launch": {
"description": "For new product launches and service introductions",
"core_slides": [
{"title": "Product Concept", "style": "Industrial Design", "prompt_hint": "Product design"},
{"title": "User Needs", "style": "Colorful Mind Map", "prompt_hint": "Customer pain points"},
{"title": "Features", "style": "Mobile App Mockup", "prompt_hint": "UI/UX screens"},
{"title": "How It Works", "style": "Flowchart", "prompt_hint": "Function flow"},
{"title": "Market Position", "style": "3D Bubble Chart", "prompt_hint": "Competitor comparison"},
{"title": "Launch Schedule", "style": "Timeline Ribbon", "prompt_hint": "Launch roadmap"}
],
"optional_slides": [
{"title": "Target Customers", "style": "Colorful Mind Map", "prompt_hint": "Key customer segments"},
{"title": "Pricing Strategy", "style": "Pyramid/Funnel", "prompt_hint": "Pricing approach"},
{"title": "Technical Advantage", "style": "Industrial Design", "prompt_hint": "Core technology"},
{"title": "Use Scenarios", "style": "Mobile App Mockup", "prompt_hint": "Use cases"},
{"title": "Customer Reviews", "style": "KPI Dashboard", "prompt_hint": "User feedback"},
{"title": "Sales Channels", "style": "Value Chain", "prompt_hint": "Distribution strategy"},
{"title": "Marketing Strategy", "style": "Timeline Ribbon", "prompt_hint": "Promotion plan"},
{"title": "Performance Comparison", "style": "3D Bubble Chart", "prompt_hint": "Benchmarks"}
]
},
"Project Report": {
"description": "For progress and performance reports",
"core_slides": [
{"title": "Project Overview", "style": "Business Workflow", "prompt_hint": "Overall process"},
{"title": "Progress Status", "style": "Gantt Chart", "prompt_hint": "Work schedule"},
{"title": "Risk Management", "style": "Risk Heat Map", "prompt_hint": "Risk factors"},
{"title": "Performance Metrics", "style": "KPI Dashboard", "prompt_hint": "Achievement results"},
{"title": "Future Plans", "style": "Timeline Ribbon", "prompt_hint": "Next steps"}
],
"optional_slides": [
{"title": "Budget Status", "style": "Pyramid/Funnel", "prompt_hint": "Budget execution"},
{"title": "Team Performance", "style": "3D Bubble Chart", "prompt_hint": "Team contribution"},
{"title": "Issue Management", "style": "Risk Heat Map", "prompt_hint": "Key issues"},
{"title": "Improvements", "style": "Colorful Mind Map", "prompt_hint": "Process improvements"},
{"title": "Lessons Learned", "style": "Colorful Mind Map", "prompt_hint": "Key learnings"}
]
},
"Strategy Planning": {
"description": "For long-term strategy and vision development",
"core_slides": [
{"title": "Vision", "style": "3D Style (Pixar-like)", "prompt_hint": "Future vision"},
{"title": "Environmental Analysis", "style": "Elegant SWOT Quadrant", "prompt_hint": "Internal/External environment"},
{"title": "Strategy Framework", "style": "Colorful Mind Map", "prompt_hint": "Strategy structure"},
{"title": "Value Chain", "style": "Value Chain", "prompt_hint": "Business model"},
{"title": "Implementation Roadmap", "style": "Timeline Ribbon", "prompt_hint": "Phased plan"},
{"title": "Target Metrics", "style": "KPI Dashboard", "prompt_hint": "KPI targets"}
],
"optional_slides": [
{"title": "Market Outlook", "style": "3D Bubble Chart", "prompt_hint": "Future market"},
{"title": "Innovation Direction", "style": "Industrial Design", "prompt_hint": "Innovation strategy"},
{"title": "Organizational Change", "style": "Value Chain", "prompt_hint": "Org restructuring"},
{"title": "Digital Transformation", "style": "Industrial Design", "prompt_hint": "DX strategy"},
{"title": "Sustainability", "style": "Timeline Ribbon", "prompt_hint": "ESG strategy"}
]
},
"Custom": {
"description": "Build your own presentation",
"core_slides": [],
"optional_slides": []
}
}
# Korean translations for slide titles
SLIDE_TITLE_TRANSLATIONS = {
"Contents": "๋ชฉ์ฐจ",
"Problem Definition": "๋ฌธ์ œ ์ •์˜",
"Current Analysis": "ํ˜„ํ™ฉ ๋ถ„์„",
"Solution": "์†”๋ฃจ์…˜",
"Process": "ํ”„๋กœ์„ธ์Šค",
"Timeline": "์ผ์ •",
"Market Size": "์‹œ์žฅ ๊ทœ๋ชจ",
"Competition Analysis": "๊ฒฝ์Ÿ ๋ถ„์„",
"Business Model": "๋น„์ฆˆ๋‹ˆ์Šค ๋ชจ๋ธ",
"Team Introduction": "ํŒ€ ์†Œ๊ฐœ",
"Financial Plan": "์žฌ๋ฌด ๊ณ„ํš",
"Risk Management": "์œ„ํ—˜ ๊ด€๋ฆฌ",
"Partnership": "ํŒŒํŠธ๋„ˆ์‹ญ",
"Technology Stack": "๊ธฐ์ˆ  ์Šคํƒ",
"Customer Cases": "๊ณ ๊ฐ ์‚ฌ๋ก€",
"Growth Strategy": "์„ฑ์žฅ ์ „๋žต",
"Investment Use": "ํˆฌ์ž ํ™œ์šฉ",
"Exit Strategy": "Exit ์ „๋žต",
"Product Concept": "์ œํ’ˆ ์ปจ์…‰",
"User Needs": "์‚ฌ์šฉ์ž ๋‹ˆ์ฆˆ",
"Features": "๊ธฐ๋Šฅ ์†Œ๊ฐœ",
"How It Works": "์ž‘๋™ ์›๋ฆฌ",
"Market Position": "์‹œ์žฅ ํฌ์ง€์…˜",
"Launch Schedule": "์ถœ์‹œ ์ผ์ •",
"Target Customers": "ํƒ€๊ฒŸ ๊ณ ๊ฐ",
"Pricing Strategy": "๊ฐ€๊ฒฉ ์ •์ฑ…",
"Technical Advantage": "๊ธฐ์ˆ  ์šฐ์œ„",
"Use Scenarios": "์‚ฌ์šฉ ์‹œ๋‚˜๋ฆฌ์˜ค",
"Customer Reviews": "๊ณ ๊ฐ ํ›„๊ธฐ",
"Sales Channels": "ํŒ๋งค ์ฑ„๋„",
"Marketing Strategy": "๋งˆ์ผ€ํŒ… ์ „๋žต",
"Performance Comparison": "์„ฑ๋Šฅ ๋น„๊ต",
"Project Overview": "ํ”„๋กœ์ ํŠธ ๊ฐœ์š”",
"Progress Status": "์ง„ํ–‰ ํ˜„ํ™ฉ",
"Performance Metrics": "์„ฑ๊ณผ ์ง€ํ‘œ",
"Future Plans": "ํ–ฅํ›„ ๊ณ„ํš",
"Budget Status": "์˜ˆ์‚ฐ ํ˜„ํ™ฉ",
"Team Performance": "ํŒ€ ์„ฑ๊ณผ",
"Issue Management": "์ด์Šˆ ๊ด€๋ฆฌ",
"Improvements": "๊ฐœ์„  ์‚ฌํ•ญ",
"Lessons Learned": "๊ตํ›ˆ",
"Vision": "๋น„์ „",
"Environmental Analysis": "ํ™˜๊ฒฝ ๋ถ„์„",
"Strategy Framework": "์ „๋žต ์ฒด๊ณ„",
"Value Chain": "๊ฐ€์น˜ ์‚ฌ์Šฌ",
"Implementation Roadmap": "์‹คํ–‰ ๋กœ๋“œ๋งต",
"Target Metrics": "๋ชฉํ‘œ ์ง€ํ‘œ",
"Market Outlook": "์‹œ์žฅ ์ „๋ง",
"Innovation Direction": "ํ˜์‹  ๋ฐฉํ–ฅ",
"Organizational Change": "์กฐ์ง ๋ณ€ํ™”",
"Digital Transformation": "๋””์ง€ํ„ธ ์ „ํ™˜",
"Sustainability": "์ง€์†๊ฐ€๋Šฅ์„ฑ"
}