Infographic Creator
Run ID: 69cb48c561b1021a29a879472026-03-31Design
PantheraHive BOS
BOS Dashboard

As part of the "Infographic Creator" workflow, this document outlines the comprehensive design requirements for generating professional and impactful infographics. This foundational step ensures that all subsequent creative and development efforts are aligned with a clear vision, targeting specific communication goals and audience needs.


Infographic Design Requirements: Comprehensive Specification

This deliverable details the core design specifications, conceptual wireframe components, recommended color palettes, and user experience (UX) best practices crucial for the successful creation of high-quality infographics.

1. Design Specifications

The design specifications define the fundamental characteristics and objectives of the infographics to be created.

  • 1.1. Purpose & Objectives:

* Inform/Educate: Present complex information in an easily digestible format.

* Summarize: Condense lengthy reports, articles, or data sets into key takeaways.

* Persuade/Advocate: Highlight data points to support a particular argument or call to action.

* Compare/Contrast: Visually demonstrate differences and similarities between two or more entities.

* Illustrate Process/Timeline: Map out sequential steps or historical events clearly.

* Generate Engagement: Capture attention and encourage sharing across digital platforms.

  • 1.2. Target Audience Considerations:

* Professionals/B2B: Clean, data-driven, sophisticated, formal tone. Emphasis on accuracy and actionable insights.

* General Public/B2C: Engaging, simplified, relatable, possibly more illustrative or storytelling-focused. Accessible language.

* Students/Educational: Clear, structured, explanatory, with strong visual aids for learning.

* Internal Stakeholders: Direct, concise, focused on internal data or processes.

  • 1.3. Key Information Elements & Data Types:

* Statistical Data: Percentages, figures, comparisons, trends (e.g., charts, graphs, data visualizations).

* Chronological Data: Timelines, historical events, project phases (e.g., linear flows, event markers).

* Process/Workflow Data: Steps, decision points, inputs/outputs (e.g., flowcharts, numbered steps).

* Hierarchical Data: Organizational structures, category breakdowns (e.g., tree diagrams, pyramids).

* Geographical Data: Maps, regional statistics (e.g., choropleth maps, pin drops).

* Conceptual Data: Explanations of abstract ideas, features, benefits (e.g., icons, metaphors, explanatory text).

  • 1.4. Common Infographic Types to Support:

* Statistical Infographics: Heavily reliant on numbers, charts, and graphs.

* Timeline Infographics: Illustrate events over a period.

* Process Infographics: Explain how something works or a series of steps.

* Comparison Infographics: Highlight differences and similarities between items.

* List Infographics: Present a series of points or tips.

* Geographic Infographics: Use maps to display location-based data.

* Hierarchical Infographics: Organize information from greatest to least, or largest to smallest.

* Resume/Profile Infographics: Visual summaries of an individual's skills and experience.

  • 1.5. Content Structure & Flow:

* Clear Title & Subtitle: Engaging, concise, and informative.

* Introduction: Hook the reader, briefly state the topic and purpose.

* Main Body Sections: Logically structured segments, each addressing a key point or data set.

* Each section should have a clear heading/label.

* Information presented in digestible chunks, often with accompanying visuals.

* Conclusion/Summary: Reinforce key takeaways, provide a brief summary.

* Call to Action (Optional but Recommended): Guide the reader on what to do next (e.g., visit website, download report).

* Sources & Credits: Credibility and professionalism, typically in the footer.

* Branding/Logo: Consistent placement, usually in header or footer.

2. Wireframe Descriptions (Component-Based Approach)

Instead of a single wireframe, we will define modular components and common layout structures that can be assembled to create various infographic types. This approach allows for flexibility and customization.

  • 2.1. Standard Layout Structures:

* Vertical Scroll (Most Common): Information flows top-to-bottom, ideal for storytelling and complex narratives.

Components arranged sequentially, guiding the eye downwards.*

* Horizontal Flow: Less common, suitable for timelines or processes that emphasize progression across a plane.

Components arranged left-to-right, often with connecting elements.*

* Modular Grid: Best for comparisons, lists, or multiple independent data points that need to be presented side-by-side.

Components arranged in a grid, allowing for easy scanning of distinct units.*

  • 2.2. Core Infographic Components:

* Header Block:

* Elements: Main Title (H1), Subtitle/Description (H2/P), Company Logo (optional).

* Placement: Top of the infographic.

* Introduction Block:

* Elements: Short introductory paragraph, possibly a hero image or icon.

* Purpose: Set context and engage the reader.

* Statistical Visualization Block:

* Elements: Bar charts, line graphs, pie charts, donut charts, area charts, pictograms, call-out numbers (large, bold figures).

* Features: Data labels, axes, legends, clear units.

* Timeline/Process Block:

* Elements: Dates/Steps, connecting lines/arrows, event descriptions, associated icons/small images.

* Layouts: Linear, serpentine, branching.

* Comparison Block:

* Elements: Two or more columns/sections for side-by-side comparison, pros/cons, feature lists, visual indicators (e.g., checkmarks, crosses).

* Layouts: Vertical split, horizontal split, feature-by-feature rows.

* Iconography/Illustration Block:

* Elements: Large thematic icons, custom illustrations, small explanatory text.

* Purpose: Visually represent concepts, break up text, add aesthetic appeal.

* Text/Explanation Block:

* Elements: Paragraphs of explanatory text, bullet points, pull quotes.

* Purpose: Provide context and detail where visuals alone are insufficient.

* Call-to-Action (CTA) Block:

* Elements: Clear CTA button or text link, brief persuasive message.

* Placement: Prominently at the end or strategically within the content.

* Footer Block:

* Elements: Sources, copyright, contact information, social media links, additional branding.

* Placement: Bottom of the infographic.

3. Color Palettes

Color plays a critical role in conveying mood, guiding attention, and ensuring readability. Palettes will be designed to be flexible, professional, and accessible.

  • 3.1. Core Palette Principles:

* Brand Alignment: Colors should ideally align with existing brand guidelines.

* Clarity & Contrast: Sufficient contrast between text, graphics, and background for readability (WCAG 2.1 AA standards recommended).

* Psychological Impact: Colors evoke emotions; choose appropriately for the message (e.g., blue for trust, green for growth, red for urgency).

* Consistency: Maintain a consistent color scheme throughout the infographic.

* Accessibility: Consider color blindness; avoid relying solely on color to convey information.

  • 3.2. Recommended Palette Types:

* Primary Palette (Dominant):

* Description: 2-3 main colors that form the foundation of the infographic's visual identity. Often includes a primary brand color and a complementary neutral.

* Usage: Large backgrounds, main headings, primary graphical elements.

* Example: #003366 (Dark Blue), #F2F2F2 (Light Gray), #FFFFFF (White).

* Secondary Palette (Accent & Data):

* Description: 3-5 accent colors used to highlight key information, differentiate data points, or add visual interest. These should complement the primary palette.

* Usage: Data visualization (charts, graphs), call-outs, icons, progress indicators.

* Example (for data): #3498DB (Sky Blue), #2ECC71 (Emerald Green), #E74C3C (Coral Red), #F1C40F (Sunflower Yellow), #9B59B6 (Amethyst Purple).

* Neutral Palette (Background & Text):

* Description: A range of grays, whites, and off-whites for backgrounds, subtle dividers, and body text.

* Usage: Backgrounds, body text, secondary text, borders, shadows.

* Example: #333333 (Dark Gray for text), #666666 (Medium Gray for secondary text), #CCCCCC (Light Gray for subtle elements), #EFEFEF (Off-White for backgrounds).

  • 3.3. Thematic Color Considerations:

* Corporate/Professional: Blues, greens, grays, and whites for a trustworthy and clean look.

* Energetic/Creative: Brighter, more saturated colors with strong contrasts.

* Minimalist/Modern: Limited color palette, often monochrome with a single accent color.

* Nature/Environmental: Earth tones, greens, blues.

4. UX Recommendations (for the Infographic Content)

These recommendations focus on optimizing the user experience when consuming the infographic content itself, ensuring clarity, engagement, and effectiveness.

  • 4.1. Clarity & Simplicity:

* Concise Language: Use clear, straightforward language; avoid jargon where possible.

* Visual-First Approach: Wherever possible, convey information visually rather than through lengthy text.

* Minimalism: Avoid clutter. Every element should serve a purpose.

* Direct Messaging: Ensure the core message is immediately apparent.

  • 4.2. Visual Hierarchy:

* Scanning Path: Design the infographic to guide the viewer's eye logically through the information (e.g., Z-pattern, F-pattern).

* Size & Weight: Use varying font sizes, weights, and graphic sizes to emphasize important elements.

* Color & Contrast: Employ color strategically to draw attention to key data points or sections.

* Whitespace: Utilize ample whitespace to separate elements and improve readability, preventing visual fatigue.

  • 4.3. Readability & Typography:

* Font Selection: Choose legible fonts. Sans-serif fonts (e.g., Open Sans, Lato, Montserrat) are generally preferred for digital infographics due to their clarity.

* Font Sizes: Ensure main headings are distinct, body text is easily readable, and captions/sources are appropriately sized.

* Line Spacing (Leading): Adequate line spacing improves text readability.

* Contrast: High contrast between text color and background color is paramount.

* Consistency: Maintain consistent font families and styles throughout the infographic.

  • 4.4. Consistency:

* Visual Style: Maintain a consistent aesthetic for icons, illustrations, data visualization styles, and overall graphics.

* Branding: Consistent application of logos, brand colors, and brand voice.

* Layout & Spacing: Uniform spacing between elements and consistent layout patterns across sections.

  • 4.5. Scannability & Engagement:

* Headings & Subheadings: Use clear, descriptive headings to break up content and allow quick scanning.

* Bullet Points & Lists: Simplify complex information into digestible points.

* Iconography: Use relevant and well-designed icons to represent concepts quickly.

* Storytelling: Structure the infographic to tell a compelling story or narrative, guiding the viewer from introduction to conclusion.

  • 4.6. Responsiveness & Adaptability (for digital consumption):

* Optimized for Screens: While often static images, consider how the infographic will appear on various screen sizes (desktop, tablet, mobile). Ensure text remains legible and key visuals are discernible, even if scaling occurs.

* File Size: Optimize image file sizes for faster loading without compromising quality.

  • 4.7. Call to Action (CTA):

* Clear & Prominent: If included, the CTA should be visually distinct and clearly state the desired action.

* Singular Focus: Avoid multiple competing CTAs to prevent user confusion.

  • 4.8. Source Citation:

* Credibility: Always include sources for data and statistics.

* Placement: Typically at the bottom, in a smaller but legible font.


This detailed specification will serve as the guiding document for the design and development phases of the Infographic Creator workflow, ensuring that the final output is professional, effective, and tailored to the client's needs.

gemini Output

This document outlines the detailed design specifications, wireframe descriptions, color palettes, and user experience (UX) recommendations for the Infographic Creator tool. The goal is to provide a robust, intuitive, and professional platform for users to design compelling infographics with ease.


Infographic Creator: Design Specifications

1. Detailed Design Specifications

The Infographic Creator will be a web-based application designed for both novice and experienced users to produce high-quality infographics.

1.1. Core Functionality:

  • Template-Driven Design: A rich library of professionally designed, customizable templates across various categories (e.g., Business, Education, Marketing, Health, Technology).
  • Drag-and-Drop Editor: An intuitive canvas-based editor allowing users to easily add, move, resize, and arrange elements.
  • Content Input & Management:

* Text: Add headings, subheadings, body text, lists (bulleted, numbered), and callouts. Full control over font family, size, color, weight, alignment, line spacing, and letter spacing.

* Data: Input numerical data directly, import from CSV/Excel, or connect to external data sources (stretch goal). Automatic visualization generation based on data.

* Images: Upload personal images, access a stock photo library, or search for free-to-use images. Basic image editing capabilities (crop, resize, filters, opacity).

* Icons: A vast library of scalable vector icons with customizable colors.

  • Visualization Tools:

* Charts & Graphs: A variety of chart types including Bar, Line, Pie, Doughnut, Area, Scatter, Stacked Bar/Area, Funnel, Pyramid, Gauge. Customizable colors, labels, axes, and legends.

* Infographic Elements: Specialized elements such as timelines, process flows, maps, comparison tables, progress bars, and call-to-action buttons.

  • Customization & Styling:

* Color Palettes: Predefined professional color palettes and the ability to create custom palettes. Element-specific color pickers.

* Fonts: Access to Google Fonts library and a selection of default web-safe fonts.

* Shapes & Lines: Basic geometric shapes, arrows, and lines with customizable stroke, fill, and opacity.

* Backgrounds: Solid colors, gradients, patterns, and image backgrounds.

  • Layout & Alignment:

* Grid System: Toggleable grid and snap-to-grid functionality for precise alignment.

* Alignment Tools: Align elements to top, bottom, left, right, center, distribute evenly.

* Layer Management: Bring forward, send backward, group, ungroup, lock, and hide elements.

  • Project Management:

* Save, load, and duplicate infographic projects.

* Version history/revision control (optional, advanced feature).

  • Export & Sharing:

* High-Resolution Export: PNG, JPG, PDF (vector and raster), SVG.

* Print-Ready: Options for bleed, crop marks.

* Web Embedding: Embed code for websites.

* Social Sharing: Direct sharing options to popular social media platforms.

1.2. Technical Considerations:

  • Responsive Design: While the editor itself will be optimized for desktop, generated infographics should be viewable responsively.
  • Performance: Optimize for fast loading times and smooth editing experience, especially with complex infographics.
  • Scalability: Architecture designed to handle a growing user base and feature set.

2. Wireframe Descriptions

The following wireframe descriptions outline the key screens and their primary components within the Infographic Creator.

2.1. Dashboard / Project Selector

  • Layout:

* Header: Logo, "My Projects" link, "Templates" link, "Help" link, User Profile/Settings.

* Main Area (Left): "Create New Infographic" button (prominent), possibly "Start from Scratch" or "Import Data."

* Main Area (Right): "My Infographics" section displaying a grid or list of saved projects. Each project thumbnail includes:

* Infographic Title

* Last Modified Date

* Options menu (Edit, Duplicate, Delete, Export).

* Templates Section (below/separate tab): Categorized browsing of templates with search and filter options. Each template card shows a preview and a "Use Template" button.

2.2. Infographic Editor (Main Canvas)

  • Layout:

* Top Bar (Header):

* Logo/App Name

* Project Title (editable)

* "Save" button (with auto-save indicator)

* "Undo" / "Redo" buttons

* "Share" button

* "Export" button (dropdown for formats)

* User Profile/Settings.

* Left Sidebar (Elements Panel): Tabbed navigation or accordion for different element types:

* Templates: Browse and apply new templates.

* Text: Predefined text styles (Heading 1, Heading 2, Body Text, List Item) and a "Add Text Box" button.

* Visuals:

* Charts: Chart type selector (Bar, Line, Pie, etc.).

* Icons: Searchable icon library.

* Images: Stock photos, "Upload Image" button.

* Shapes: Basic geometric shapes, lines, arrows.

* Infographic Elements: Timelines, process flows, etc.

* Data: "Import Data" (CSV/Excel), manual data entry table.

* Uploads: User's uploaded images/files.

* Background: Color, gradient, pattern, image options.

* Central Canvas:

* The main editable area where the infographic is built.

* Drag-and-drop functionality for elements.

* Selection handles for resizing and rotating elements.

* Contextual mini-toolbar on selected elements (e.g., duplicate, delete, lock, layer order).

* Toggleable grid lines and rulers.

* Right Sidebar (Properties Panel): Contextual panel that changes based on the selected element:

* If Text Selected: Font family, size, color, weight, alignment, line height, letter spacing, opacity.

* If Image Selected: Crop, resize, filters, opacity, border, shadow.

* If Chart Selected: Data input table, chart type, colors, axis labels, legend visibility.

* If No Element Selected (Canvas Properties): Canvas dimensions (width, height), background color/image.

* Bottom Bar:

* Zoom controls (slider, percentage input).

* Fit to screen button.

* Page navigator (if multi-page infographic).

2.3. Export / Share Modal

  • Layout:

* Header: "Export Your Infographic" / "Share Your Infographic."

* Export Tab:

* File Type Selector (PNG, JPG, PDF, SVG).

* Quality/Resolution Options (Low, Medium, High, Custom DPI).

* Background Transparency Toggle (for PNG).

* "Export" button.

* Share Tab:

* "Shareable Link" (copy button).

* Social Media Icons (Facebook, Twitter, LinkedIn, Pinterest) with direct share functionality.

* "Embed Code" (copy button).

3. Color Palettes

A professional design requires thoughtful color schemes. Below are three distinct palettes suitable for various infographic themes, along with their suggested usage.

3.1. Palette 1: "Corporate Professional"

  • Description: Clean, trustworthy, and authoritative. Ideal for business reports, financial data, and formal presentations.
  • Primary Accent: #007BFF (Vibrant Blue) - Headings, key data points, primary calls to action.
  • Secondary Accent: #28A745 (Emerald Green) - Positive indicators, secondary calls to action, highlights.
  • Neutral Dark: #343A40 (Charcoal Gray) - Body text, strong outlines, background for dark themes.
  • Neutral Light: #F8F9FA (Off-White) - Main backgrounds, card backgrounds.
  • Subtle Gray: #6C757D (Medium Gray) - Subheadings, secondary text, subtle borders.

3.2. Palette 2: "Modern & Energetic"

  • Description: Dynamic, engaging, and contemporary. Great for marketing, educational content, and technology-focused infographics.
  • Primary Accent: #FF6B6B (Coral Red) - Bold statements, warnings, primary calls to action.
  • Secondary Accent: #2EC4B6 (Teal) - Supporting visuals, positive aspects, secondary highlights.
  • Tertiary Accent: #FFC300 (Amber Yellow) - Attention-grabbing elements, subtle warnings, differentiators.
  • Neutral Dark: #212529 (Deep Black) - High-contrast text, strong visual anchors.
  • Neutral Light: #E9ECEF (Light Gray) - Backgrounds, section dividers.

3.3. Palette 3: "Earthy & Organic"

  • Description: Calm, natural, and inviting. Suitable for environmental topics, health & wellness, and lifestyle content.
  • Primary Accent: #4CAF50 (Forest Green) - Growth, nature, primary positive elements.
  • Secondary Accent: #FF9800 (Warm Orange) - Energy, warmth, secondary highlights.
  • Tertiary Accent: #795548 (Earthy Brown) - Stability, natural elements, subtle contrast.
  • Neutral Dark: #424242 (Dark Gray) - Main body text, outlines.
  • Neutral Light: #F5F5F5 (Very Light Gray) - Soft backgrounds, subtle dividers.

4. UX Recommendations

User experience is paramount for an effective Infographic Creator. The following recommendations aim to ensure a smooth, intuitive, and satisfying design process.

4.1. Intuitive Interaction:

  • Drag-and-Drop Excellence: Ensure all elements are easily draggable, resizable, and rotatable directly on the canvas with clear visual feedback.
  • Contextual Controls: The right-hand properties panel should dynamically update to show relevant options for the currently selected element, minimizing clutter.
  • "What You See Is What You Get" (WYSIWYG): The editor should precisely reflect how the infographic will look when exported.

4.2. Guidance & Support:

  • Onboarding Tour: A brief, interactive tour for first-time users highlighting key features and workflow.
  • Tooltips & Help Text: Provide clear tooltips on hover for icons and less obvious functionalities.
  • Template Guidance: Offer prompts or tips when a user selects a template, suggesting how to best customize it.
  • Pre-designed Blocks: Provide pre-designed sections (e.g., "About Us" section, "Key Statistics" block) that users can drag and drop to quickly build layouts.

4.3. Efficiency & Control:

  • Real-time Auto-Save: Automatically save user progress frequently to prevent data loss, with a clear "Saved" or "Saving..." indicator.
  • Robust Undo/Redo: Implement a comprehensive undo/redo history, allowing users to revert multiple actions.
  • Keyboard Shortcuts: Offer common keyboard shortcuts (Ctrl/Cmd+C, V, Z, Y, G for group, etc.) for power users.
  • Layer Management: Provide an accessible layer panel for complex designs, allowing users to easily select, reorder, lock, and hide elements.
  • Smart Guides & Snapping: Implement intelligent snapping to align elements with each other, the canvas, and a grid system.
  • Batch Editing: Allow users to select multiple elements and apply common property changes (e.g., change color of all selected text boxes).

4.4. Visual Feedback & Performance:

  • Loading Indicators: Clear and friendly loading indicators for template previews, image uploads, and exports.
  • Smooth Animations: Subtle, non-disruptive animations for panel transitions, element manipulation, and state changes.
  • Performance Optimization: Prioritize a fluid editing experience, even with many elements. Optimize image loading and rendering.

4.5. Accessibility:

  • Color Contrast: Ensure default color palettes and text-on-background combinations meet WCAG contrast guidelines.
  • Font Sizing: Provide options for legible font sizes and clear hierarchy.
  • Keyboard Navigation: Ensure core editor functions are accessible via keyboard for users who cannot use a mouse.

4.6. Export & Sharing Experience:

  • Clear Export Options: Present export formats (PNG, JPG, PDF, SVG) with clear descriptions of their use cases.
  • Quality/Resolution Control: Allow users to select export quality or DPI, with a preview of file size implications.
  • Direct Social Sharing: Integrate direct sharing options to popular social media platforms for ease of distribution.

This comprehensive design specification will serve as the blueprint for developing a world-class Infographic Creator, ensuring a powerful yet user-friendly experience.

gemini Output

This deliverable outlines the finalized design assets for your infographic, ensuring a professional, engaging, and highly effective visual communication tool. This comprehensive guide details the design specifications, conceptual wireframe, color palette, and critical UX recommendations to bring your infographic to life.


Finalized Infographic Design Assets: The Future of Remote Work: Trends & Opportunities

1. Introduction & Design Philosophy

This document provides the complete design framework for the "The Future of Remote Work: Trends & Opportunities" infographic. The design philosophy centers on clarity, modern professionalism, and engaging data storytelling. We aim for a clean, approachable aesthetic that simplifies complex information, encourages scannability, and visually guides the viewer through key insights about remote work.

Target Audience: Business professionals, HR managers, entrepreneurs, and individuals interested in the evolving landscape of work.

Goal: To inform and educate the audience on key trends, benefits, challenges, and opportunities within the remote work paradigm, inspiring actionable insights.

2. Design Specifications

2.1. Dimensions & Format

  • Primary Format: Vertical, long-form infographic.
  • Web Dimensions: 1080px width x 4000-6000px height (variable based on content density).
  • Print Dimensions: A1 or A2 equivalent (optimized for clarity at larger print sizes).
  • Resolution: 300 DPI for print, 72 DPI for web (with high-quality asset rendering).
  • File Formats:

* Deliverable: PNG (high-res for web), PDF (vector-based for print/shareable).

* Source Files: Adobe Illustrator (.AI) or Figma (.FIG) for full editability.

2.2. Typography

  • Headline Font (H1, H2): Montserrat Bold

Usage:* Main title, section headers.

Rationale:* Modern, strong, highly legible, and professional.

  • Body Font (H3, Body Text, Labels): Open Sans Regular / Semi-Bold

Usage:* Sub-headers, body paragraphs, data labels, captions.

Rationale:* Highly readable, versatile, excellent for on-screen and print readability.

  • Accent Font (Callouts, CTAs): Montserrat Semi-Bold / Bold (or similar sans-serif with slight contrast)

Usage:* Key statistics, quotes, calls to action.

Rationale:* Provides emphasis and breaks visual monotony while maintaining consistency.

Typographic Hierarchy & Sizing (Examples for Web):

  • H1 (Main Title): 48-64px, Montserrat Bold
  • H2 (Section Titles): 32-40px, Montserrat Bold
  • H3 (Sub-sections/Key Points): 20-24px, Open Sans Semi-Bold
  • Body Text: 14-16px, Open Sans Regular
  • Data Labels/Captions: 12-14px, Open Sans Regular
  • Call to Action: 18-22px, Montserrat Bold

2.3. Iconography

  • Style: Flat, line-art or subtly filled icons with rounded corners. Consistent stroke weight and visual language.
  • Color: Predominantly using accent colors (Teal, Gold) against neutral backgrounds or white against primary colors.
  • Source: Curated set from a professional icon library (e.g., The Noun Project, Font Awesome Pro) or custom-designed.
  • Purpose: To visually represent concepts (e.g., collaboration, flexibility, technology, growth) and break up text.

2.4. Imagery & Illustrations

  • Style: Minimalist, geometric, abstract illustrations that complement the flat icon style. Focus on conceptual representation rather than photorealism.
  • Color: Integrated with the defined color palette.
  • Usage: Used as background elements for sections, visual metaphors, or to highlight major themes. Avoid stock photos to maintain a unique brand identity.

2.5. Data Visualization Elements

  • Consistency: All charts and graphs will adhere to a consistent visual style (colors, fonts, line weights).
  • Chart Types:

* Bar Charts: For comparing discrete categories (e.g., "Top Challenges of Remote Work").

* Line Graphs: For showing trends over time (e.g., "Growth of Remote Workforce 2010-2025").

* Pie/Donut Charts: For showing parts of a whole (e.g., "Preferred Communication Tools").

* Bubble Charts/Heatmaps: For complex data relationships (if required, with careful simplification).

* Infographic-specific visuals: Custom-designed icons or progress bars to represent percentages or quantities.

  • Labels & Legends: Clear, concise labels directly on or adjacent to data points. Legends only when necessary for clarity.
  • Annotations: Strategic use of callout boxes or arrows to highlight key insights within charts.

2.6. Layout Structure & Grids

  • Modular Grid System: Utilizes a 12-column grid for precise alignment and consistent spacing.
  • White Space: Generous use of white space to improve readability, reduce cognitive load, and create a sense of sophistication.
  • Visual Flow: Designed for a natural top-to-bottom reading flow, with clear section breaks and visual cues (e.g., background color changes, dividing lines).
  • Sectioning: Each major topic will be contained within a distinct visual section, often with a dedicated header, icon, and summary text.

3. Wireframe Description (Conceptual Layout)

The infographic will follow a standard vertical layout, guiding the viewer through a logical narrative progression.

  • 1. Header Section (Top 10-15%):

* Title: "The Future of Remote Work: Trends & Opportunities" (H1, prominent).

* Subtitle/Hook: A concise statement setting the stage (e.g., "Navigating the Evolving Landscape of Distributed Teams").

* Branding: Company logo (if applicable) and/or author credit.

* Visual: An engaging, abstract illustration related to remote work (e.g., connected global network, people collaborating digitally).

  • 2. Introduction / Key Takeaway (Next 10%):

* Section Title: "The Remote Revolution: A New Era of Work" (H2).

* Key Statistic: A compelling, attention-grabbing stat about remote work.

* Brief Overview: 2-3 sentences summarizing the shift to remote work.

* Visual: Supporting icon or small illustration.

  • 3. Core Trends Section (Multiple, ~40-50%):

* Each Trend (e.g., "Trend 1: Hybrid Models Emerge"):

* H3: Trend title.

* Icon: Relevant icon.

* Brief Description: 2-3 sentences explaining the trend.

* Data Visualization: A dedicated chart/graph (e.g., line graph showing hybrid model adoption growth, bar chart comparing hybrid vs. fully remote preferences).

* Key Insight: A bullet point or short sentence highlighting the main takeaway from the data.

Repeat for 3-5 key trends.*

  • 4. Benefits & Challenges Section (~15%):

* Section Title: "Unlocking Potential: Benefits & Hurdles" (H2).

* Split Layout: Two distinct columns or side-by-side sections.

* Benefits: List of 3-4 key benefits with icons (e.g., flexibility, productivity, talent pool).

* Challenges: List of 3-4 key challenges with icons (e.g., isolation, communication, cybersecurity).

* Visual: A subtle dividing element or background color change.

  • 5. Opportunities / Actionable Insights (Next 10-15%):

* Section Title: "Seizing the Future: Strategic Opportunities" (H2).

* Key Actionable Points: 3-5 bullet points or short paragraphs with icons, offering advice or strategies for success in remote work.

* Visual: A flow chart or timeline if outlining a process, or a cluster of illustrative icons.

  • 6. Conclusion / Summary (Next 5%):

* Section Title: "The Path Forward" (H2).

* Summary Statement: 1-2 sentences reiterating the main message.

* Key Takeaway: A final, impactful statement.

  • 7. Call to Action (CTA) & Footer (Bottom 5%):

* Prominent CTA: Clear, actionable instruction (e.g., "Download Our Remote Work Playbook," "Visit Our Blog for More Insights"). Button-style design.

* URL/Contact Info: Relevant website, social media handles, or email.

* Sources: List of data sources (if applicable, in smaller font).

* Branding: Company logo and copyright information.

4. Color Palette

The chosen palette is modern, professional, and evokes trust and innovation, while ensuring excellent readability and visual appeal.

  • Primary Colors:

* Deep Blue: #1A2F4B (Dominant background, strong headers)

Meaning:* Trust, stability, professionalism.

* Light Grey: #F5F7FA (Neutral background, subtle section breaks)

Meaning:* Cleanliness, modernity, spaciousness.

  • Secondary Colors:

* Soft Teal: #5BC0BE (Accent for icons, data points, sub-headers)

Meaning:* Innovation, clarity, growth.

* Warm Gold: #F2B134 (Secondary accent, highlights, callouts)

Meaning:* Optimism, value, attention.

  • Neutral Colors:

* Pure White: #FFFFFF (Text, backgrounds, key elements for contrast)

* Dark Grey: #333333 (Body text, fine print for readability)

Color Usage Guide:

  • Backgrounds: Light Grey and Pure White will be primary backgrounds, with Deep Blue used for impactful section headers or full-width banners.
  • Text: Dark Grey for body text, Pure White for text on Deep Blue backgrounds. Headlines will use Deep Blue or Pure White depending on background.
  • Data Visualization: Soft Teal and Warm Gold will be primarily used for data elements, creating clear distinctions.
  • Icons & Illustrations: Soft Teal, Warm Gold, and occasionally Deep Blue.
  • Call to Action: Warm Gold button with Deep Blue or Pure White text for maximum contrast and emphasis.

5. User Experience (UX) Recommendations

These recommendations are crucial for ensuring the infographic is not only visually appealing but also highly effective in communicating its message and engaging its audience.

  • 5.1. Readability & Legibility:

* High Contrast: Ensure sufficient contrast between text and background colors (e.g., Dark Grey on Light Grey/White; White on Deep Blue).

* Appropriate Font Sizes: Maintain minimum font sizes for body text (14px web, 10pt print) to prevent eye strain.

* Line Spacing: Use generous line height (1.5x font size for body text) for comfortable reading.

  • 5.2. Information Hierarchy & Scannability:

* Clear Headings: Utilize distinct font sizes and weights for H1, H2, H3 to clearly delineate sections and sub-sections.

* Visual Cues: Employ consistent use of icons, background color changes, and subtle dividers to visually separate content blocks.

* Chunking Information: Break down complex information into smaller, digestible chunks (e.g., bullet points, short paragraphs, single-concept visuals).

* Directional Flow: Use subtle arrows or a consistent visual path to guide the viewer's eye from top to bottom and through data points.

  • 5.3. Engagement & Storytelling:

* Narrative Arc: Structure the content to tell a compelling story, from problem/introduction to solution/actionable insights.

* Visual Metaphors: Use illustrations and icons to visually represent abstract concepts, making them more relatable.

* Interactive Elements (if digital): Consider hover states for data points, or clickable links embedded within the digital PDF version for deeper dives.

  • 5.4. Accessibility:

* Color Contrast: Adhere to WCAG 2.1 guidelines for color contrast ratios (minimum AA level).

* Alternative Text: For digital versions, ensure all images and data visualizations have descriptive alt-text for screen readers.

* Font Choice: Use sans-serif fonts which are generally more accessible.

  • 5.5. Consistency:

* Design Elements: Maintain a consistent style for all icons, illustrations, data visualizations, and graphic elements throughout the infographic.

* Branding: Ensure consistent brand logo placement and adherence to brand guidelines (if provided).

* Tone of Voice: Match the visual design with a consistent, professional, and informative tone.

  • 5.6. Call to Action (CTA) Clarity:

* Prominence: The CTA should be the most visually distinct element at the bottom, using an accent color and clear typography.

* Explicitness: The CTA text should be direct and tell the user exactly what to do next.

  • 5.7. Mobile Responsiveness (for digital distribution):

* While infographics are typically static, if intended for heavy mobile viewing, consider a

infographic_creator.md
Download as Markdown
Copy all content
Full output as text
Download ZIP
IDE-ready project ZIP
Copy share link
Permanent URL for this run
Get Embed Code
Embed this result on any website
Print / Save PDF
Use browser print dialog
\n\n\n"); var hasSrcMain=Object.keys(extracted).some(function(k){return k.indexOf("src/main")>=0;}); if(!hasSrcMain) zip.file(folder+"src/main."+ext,"import React from 'react'\nimport ReactDOM from 'react-dom/client'\nimport App from './App'\nimport './index.css'\n\nReactDOM.createRoot(document.getElementById('root')!).render(\n \n \n \n)\n"); var hasSrcApp=Object.keys(extracted).some(function(k){return k==="src/App."+ext||k==="App."+ext;}); if(!hasSrcApp) zip.file(folder+"src/App."+ext,"import React from 'react'\nimport './App.css'\n\nfunction App(){\n return(\n
\n
\n

"+slugTitle(pn)+"

\n

Built with PantheraHive BOS

\n
\n
\n )\n}\nexport default App\n"); zip.file(folder+"src/index.css","*{margin:0;padding:0;box-sizing:border-box}\nbody{font-family:system-ui,-apple-system,sans-serif;background:#f0f2f5;color:#1a1a2e}\n.app{min-height:100vh;display:flex;flex-direction:column}\n.app-header{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px}\nh1{font-size:2.5rem;font-weight:700}\n"); zip.file(folder+"src/App.css",""); zip.file(folder+"src/components/.gitkeep",""); zip.file(folder+"src/pages/.gitkeep",""); zip.file(folder+"src/hooks/.gitkeep",""); Object.keys(extracted).forEach(function(p){ var fp=p.startsWith("src/")?p:"src/"+p; zip.file(folder+fp,extracted[p]); }); zip.file(folder+"README.md","# "+slugTitle(pn)+"\n\nGenerated by PantheraHive BOS.\n\n## Setup\n\`\`\`bash\nnpm install\nnpm run dev\n\`\`\`\n\n## Build\n\`\`\`bash\nnpm run build\n\`\`\`\n\n## Open in IDE\nOpen the project folder in VS Code or WebStorm.\n"); zip.file(folder+".gitignore","node_modules/\ndist/\n.env\n.DS_Store\n*.local\n"); } /* --- Vue (Vite + Composition API + TypeScript) --- */ function buildVue(zip,folder,app,code,panelTxt){ var pn=pkgName(app); var C=cc(pn); var extracted=extractCode(panelTxt); zip.file(folder+"package.json",'{\n "name": "'+pn+'",\n "version": "0.0.0",\n "type": "module",\n "scripts": {\n "dev": "vite",\n "build": "vue-tsc -b && vite build",\n "preview": "vite preview"\n },\n "dependencies": {\n "vue": "^3.5.13",\n "vue-router": "^4.4.5",\n "pinia": "^2.3.0",\n "axios": "^1.7.9"\n },\n "devDependencies": {\n "@vitejs/plugin-vue": "^5.2.1",\n "typescript": "~5.7.3",\n "vite": "^6.0.5",\n "vue-tsc": "^2.2.0"\n }\n}\n'); zip.file(folder+"vite.config.ts","import { defineConfig } from 'vite'\nimport vue from '@vitejs/plugin-vue'\nimport { resolve } from 'path'\n\nexport default defineConfig({\n plugins: [vue()],\n resolve: { alias: { '@': resolve(__dirname,'src') } }\n})\n"); zip.file(folder+"tsconfig.json",'{"files":[],"references":[{"path":"./tsconfig.app.json"},{"path":"./tsconfig.node.json"}]}\n'); zip.file(folder+"tsconfig.app.json",'{\n "compilerOptions":{\n "target":"ES2020","useDefineForClassFields":true,"module":"ESNext","lib":["ES2020","DOM","DOM.Iterable"],\n "skipLibCheck":true,"moduleResolution":"bundler","allowImportingTsExtensions":true,\n "isolatedModules":true,"moduleDetection":"force","noEmit":true,"jsxImportSource":"vue",\n "strict":true,"paths":{"@/*":["./src/*"]}\n },\n "include":["src/**/*.ts","src/**/*.d.ts","src/**/*.tsx","src/**/*.vue"]\n}\n'); zip.file(folder+"env.d.ts","/// \n"); zip.file(folder+"index.html","\n\n\n \n \n "+slugTitle(pn)+"\n\n\n
\n \n\n\n"); var hasMain=Object.keys(extracted).some(function(k){return k==="src/main.ts"||k==="main.ts";}); if(!hasMain) zip.file(folder+"src/main.ts","import { createApp } from 'vue'\nimport { createPinia } from 'pinia'\nimport App from './App.vue'\nimport './assets/main.css'\n\nconst app = createApp(App)\napp.use(createPinia())\napp.mount('#app')\n"); var hasApp=Object.keys(extracted).some(function(k){return k.indexOf("App.vue")>=0;}); if(!hasApp) zip.file(folder+"src/App.vue","\n\n\n\n\n"); zip.file(folder+"src/assets/main.css","*{margin:0;padding:0;box-sizing:border-box}body{font-family:system-ui,sans-serif;background:#fff;color:#213547}\n"); zip.file(folder+"src/components/.gitkeep",""); zip.file(folder+"src/views/.gitkeep",""); zip.file(folder+"src/stores/.gitkeep",""); Object.keys(extracted).forEach(function(p){ var fp=p.startsWith("src/")?p:"src/"+p; zip.file(folder+fp,extracted[p]); }); zip.file(folder+"README.md","# "+slugTitle(pn)+"\n\nGenerated by PantheraHive BOS.\n\n## Setup\n\`\`\`bash\nnpm install\nnpm run dev\n\`\`\`\n\n## Build\n\`\`\`bash\nnpm run build\n\`\`\`\n\nOpen in VS Code or WebStorm.\n"); zip.file(folder+".gitignore","node_modules/\ndist/\n.env\n.DS_Store\n*.local\n"); } /* --- Angular (v19 standalone) --- */ function buildAngular(zip,folder,app,code,panelTxt){ var pn=pkgName(app); var C=cc(pn); var sel=pn.replace(/_/g,"-"); var extracted=extractCode(panelTxt); zip.file(folder+"package.json",'{\n "name": "'+pn+'",\n "version": "0.0.0",\n "scripts": {\n "ng": "ng",\n "start": "ng serve",\n "build": "ng build",\n "test": "ng test"\n },\n "dependencies": {\n "@angular/animations": "^19.0.0",\n "@angular/common": "^19.0.0",\n "@angular/compiler": "^19.0.0",\n "@angular/core": "^19.0.0",\n "@angular/forms": "^19.0.0",\n "@angular/platform-browser": "^19.0.0",\n "@angular/platform-browser-dynamic": "^19.0.0",\n "@angular/router": "^19.0.0",\n "rxjs": "~7.8.0",\n "tslib": "^2.3.0",\n "zone.js": "~0.15.0"\n },\n "devDependencies": {\n "@angular-devkit/build-angular": "^19.0.0",\n "@angular/cli": "^19.0.0",\n "@angular/compiler-cli": "^19.0.0",\n "typescript": "~5.6.0"\n }\n}\n'); zip.file(folder+"angular.json",'{\n "$schema": "./node_modules/@angular/cli/lib/config/schema.json",\n "version": 1,\n "newProjectRoot": "projects",\n "projects": {\n "'+pn+'": {\n "projectType": "application",\n "root": "",\n "sourceRoot": "src",\n "prefix": "app",\n "architect": {\n "build": {\n "builder": "@angular-devkit/build-angular:application",\n "options": {\n "outputPath": "dist/'+pn+'",\n "index": "src/index.html",\n "browser": "src/main.ts",\n "tsConfig": "tsconfig.app.json",\n "styles": ["src/styles.css"],\n "scripts": []\n }\n },\n "serve": {"builder":"@angular-devkit/build-angular:dev-server","configurations":{"production":{"buildTarget":"'+pn+':build:production"},"development":{"buildTarget":"'+pn+':build:development"}},"defaultConfiguration":"development"}\n }\n }\n }\n}\n'); zip.file(folder+"tsconfig.json",'{\n "compileOnSave": false,\n "compilerOptions": {"baseUrl":"./","outDir":"./dist/out-tsc","forceConsistentCasingInFileNames":true,"strict":true,"noImplicitOverride":true,"noPropertyAccessFromIndexSignature":true,"noImplicitReturns":true,"noFallthroughCasesInSwitch":true,"paths":{"@/*":["src/*"]},"skipLibCheck":true,"esModuleInterop":true,"sourceMap":true,"declaration":false,"experimentalDecorators":true,"moduleResolution":"bundler","importHelpers":true,"target":"ES2022","module":"ES2022","useDefineForClassFields":false,"lib":["ES2022","dom"]},\n "references":[{"path":"./tsconfig.app.json"}]\n}\n'); zip.file(folder+"tsconfig.app.json",'{\n "extends":"./tsconfig.json",\n "compilerOptions":{"outDir":"./dist/out-tsc","types":[]},\n "files":["src/main.ts"],\n "include":["src/**/*.d.ts"]\n}\n'); zip.file(folder+"src/index.html","\n\n\n \n "+slugTitle(pn)+"\n \n \n \n\n\n \n\n\n"); zip.file(folder+"src/main.ts","import { bootstrapApplication } from '@angular/platform-browser';\nimport { appConfig } from './app/app.config';\nimport { AppComponent } from './app/app.component';\n\nbootstrapApplication(AppComponent, appConfig)\n .catch(err => console.error(err));\n"); zip.file(folder+"src/styles.css","* { margin: 0; padding: 0; box-sizing: border-box; }\nbody { font-family: system-ui, -apple-system, sans-serif; background: #f9fafb; color: #111827; }\n"); var hasComp=Object.keys(extracted).some(function(k){return k.indexOf("app.component")>=0;}); if(!hasComp){ zip.file(folder+"src/app/app.component.ts","import { Component } from '@angular/core';\nimport { RouterOutlet } from '@angular/router';\n\n@Component({\n selector: 'app-root',\n standalone: true,\n imports: [RouterOutlet],\n templateUrl: './app.component.html',\n styleUrl: './app.component.css'\n})\nexport class AppComponent {\n title = '"+pn+"';\n}\n"); zip.file(folder+"src/app/app.component.html","
\n
\n

"+slugTitle(pn)+"

\n

Built with PantheraHive BOS

\n
\n \n
\n"); zip.file(folder+"src/app/app.component.css",".app-header{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px}h1{font-size:2.5rem;font-weight:700;color:#6366f1}\n"); } zip.file(folder+"src/app/app.config.ts","import { ApplicationConfig, provideZoneChangeDetection } from '@angular/core';\nimport { provideRouter } from '@angular/router';\nimport { routes } from './app.routes';\n\nexport const appConfig: ApplicationConfig = {\n providers: [\n provideZoneChangeDetection({ eventCoalescing: true }),\n provideRouter(routes)\n ]\n};\n"); zip.file(folder+"src/app/app.routes.ts","import { Routes } from '@angular/router';\n\nexport const routes: Routes = [];\n"); Object.keys(extracted).forEach(function(p){ var fp=p.startsWith("src/")?p:"src/"+p; zip.file(folder+fp,extracted[p]); }); zip.file(folder+"README.md","# "+slugTitle(pn)+"\n\nGenerated by PantheraHive BOS.\n\n## Setup\n\`\`\`bash\nnpm install\nng serve\n# or: npm start\n\`\`\`\n\n## Build\n\`\`\`bash\nng build\n\`\`\`\n\nOpen in VS Code with Angular Language Service extension.\n"); zip.file(folder+".gitignore","node_modules/\ndist/\n.env\n.DS_Store\n*.local\n.angular/\n"); } /* --- Python --- */ function buildPython(zip,folder,app,code){ var title=slugTitle(app); var pn=pkgName(app); var src=code.replace(/^\`\`\`[\w]*\n?/m,"").replace(/\n?\`\`\`$/m,"").trim(); var reqMap={"numpy":"numpy","pandas":"pandas","sklearn":"scikit-learn","tensorflow":"tensorflow","torch":"torch","flask":"flask","fastapi":"fastapi","uvicorn":"uvicorn","requests":"requests","sqlalchemy":"sqlalchemy","pydantic":"pydantic","dotenv":"python-dotenv","PIL":"Pillow","cv2":"opencv-python","matplotlib":"matplotlib","seaborn":"seaborn","scipy":"scipy"}; var reqs=[]; Object.keys(reqMap).forEach(function(k){if(src.indexOf("import "+k)>=0||src.indexOf("from "+k)>=0)reqs.push(reqMap[k]);}); var reqsTxt=reqs.length?reqs.join("\n"):"# add dependencies here\n"; zip.file(folder+"main.py",src||"# "+title+"\n# Generated by PantheraHive BOS\n\nprint(title+\" loaded\")\n"); zip.file(folder+"requirements.txt",reqsTxt); zip.file(folder+".env.example","# Environment variables\n"); zip.file(folder+"README.md","# "+title+"\n\nGenerated by PantheraHive BOS.\n\n## Setup\n\`\`\`bash\npython3 -m venv .venv\nsource .venv/bin/activate\npip install -r requirements.txt\n\`\`\`\n\n## Run\n\`\`\`bash\npython main.py\n\`\`\`\n"); zip.file(folder+".gitignore",".venv/\n__pycache__/\n*.pyc\n.env\n.DS_Store\n"); } /* --- Node.js --- */ function buildNode(zip,folder,app,code){ var title=slugTitle(app); var pn=pkgName(app); var src=code.replace(/^\`\`\`[\w]*\n?/m,"").replace(/\n?\`\`\`$/m,"").trim(); var depMap={"mongoose":"^8.0.0","dotenv":"^16.4.5","axios":"^1.7.9","cors":"^2.8.5","bcryptjs":"^2.4.3","jsonwebtoken":"^9.0.2","socket.io":"^4.7.4","uuid":"^9.0.1","zod":"^3.22.4","express":"^4.18.2"}; var deps={}; Object.keys(depMap).forEach(function(k){if(src.indexOf(k)>=0)deps[k]=depMap[k];}); if(!deps["express"])deps["express"]="^4.18.2"; var pkgJson=JSON.stringify({"name":pn,"version":"1.0.0","main":"src/index.js","scripts":{"start":"node src/index.js","dev":"nodemon src/index.js"},"dependencies":deps,"devDependencies":{"nodemon":"^3.0.3"}},null,2)+"\n"; zip.file(folder+"package.json",pkgJson); var fallback="const express=require(\"express\");\nconst app=express();\napp.use(express.json());\n\napp.get(\"/\",(req,res)=>{\n res.json({message:\""+title+" API\"});\n});\n\nconst PORT=process.env.PORT||3000;\napp.listen(PORT,()=>console.log(\"Server on port \"+PORT));\n"; zip.file(folder+"src/index.js",src||fallback); zip.file(folder+".env.example","PORT=3000\n"); zip.file(folder+".gitignore","node_modules/\n.env\n.DS_Store\n"); zip.file(folder+"README.md","# "+title+"\n\nGenerated by PantheraHive BOS.\n\n## Setup\n\`\`\`bash\nnpm install\n\`\`\`\n\n## Run\n\`\`\`bash\nnpm run dev\n\`\`\`\n"); } /* --- Vanilla HTML --- */ function buildVanillaHtml(zip,folder,app,code){ var title=slugTitle(app); var isFullDoc=code.trim().toLowerCase().indexOf("=0||code.trim().toLowerCase().indexOf("=0; var indexHtml=isFullDoc?code:"\n\n\n\n\n"+title+"\n\n\n\n"+code+"\n\n\n\n"; zip.file(folder+"index.html",indexHtml); zip.file(folder+"style.css","/* "+title+" — styles */\n*{margin:0;padding:0;box-sizing:border-box}\nbody{font-family:system-ui,-apple-system,sans-serif;background:#fff;color:#1a1a2e}\n"); zip.file(folder+"script.js","/* "+title+" — scripts */\n"); zip.file(folder+"assets/.gitkeep",""); zip.file(folder+"README.md","# "+title+"\n\nGenerated by PantheraHive BOS.\n\n## Open\nDouble-click \`index.html\` in your browser.\n\nOr serve locally:\n\`\`\`bash\nnpx serve .\n# or\npython3 -m http.server 3000\n\`\`\`\n"); zip.file(folder+".gitignore",".DS_Store\nnode_modules/\n.env\n"); } /* ===== MAIN ===== */ var sc=document.createElement("script"); sc.src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.10.1/jszip.min.js"; sc.onerror=function(){ if(lbl)lbl.textContent="Download ZIP"; alert("JSZip load failed — check connection."); }; sc.onload=function(){ var zip=new JSZip(); var base=(_phFname||"output").replace(/\.[^.]+$/,""); var app=base.toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"")||"my_app"; var folder=app+"/"; var vc=document.getElementById("panel-content"); var panelTxt=vc?(vc.innerText||vc.textContent||""):""; var lang=detectLang(_phCode,panelTxt); if(_phIsHtml){ buildVanillaHtml(zip,folder,app,_phCode); } else if(lang==="flutter"){ buildFlutter(zip,folder,app,_phCode,panelTxt); } else if(lang==="react-native"){ buildReactNative(zip,folder,app,_phCode,panelTxt); } else if(lang==="swift"){ buildSwift(zip,folder,app,_phCode,panelTxt); } else if(lang==="kotlin"){ buildKotlin(zip,folder,app,_phCode,panelTxt); } else if(lang==="react"){ buildReact(zip,folder,app,_phCode,panelTxt); } else if(lang==="vue"){ buildVue(zip,folder,app,_phCode,panelTxt); } else if(lang==="angular"){ buildAngular(zip,folder,app,_phCode,panelTxt); } else if(lang==="python"){ buildPython(zip,folder,app,_phCode); } else if(lang==="node"){ buildNode(zip,folder,app,_phCode); } else { /* Document/content workflow */ var title=app.replace(/_/g," "); var md=_phAll||_phCode||panelTxt||"No content"; zip.file(folder+app+".md",md); var h=""+title+""; h+="

"+title+"

"; var hc=md.replace(/&/g,"&").replace(//g,">"); hc=hc.replace(/^### (.+)$/gm,"

$1

"); hc=hc.replace(/^## (.+)$/gm,"

$1

"); hc=hc.replace(/^# (.+)$/gm,"

$1

"); hc=hc.replace(/\*\*(.+?)\*\*/g,"$1"); hc=hc.replace(/\n{2,}/g,"

"); h+="

"+hc+"

Generated by PantheraHive BOS
"; zip.file(folder+app+".html",h); zip.file(folder+"README.md","# "+title+"\n\nGenerated by PantheraHive BOS.\n\nFiles:\n- "+app+".md (Markdown)\n- "+app+".html (styled HTML)\n"); } zip.generateAsync({type:"blob"}).then(function(blob){ var a=document.createElement("a"); a.href=URL.createObjectURL(blob); a.download=app+".zip"; a.click(); URL.revokeObjectURL(a.href); if(lbl)lbl.textContent="Download ZIP"; }); }; document.head.appendChild(sc); } function phShare(){navigator.clipboard.writeText(window.location.href).then(function(){var el=document.getElementById("ph-share-lbl");if(el){el.textContent="Link copied!";setTimeout(function(){el.textContent="Copy share link";},2500);}});}function phEmbed(){var runId=window.location.pathname.split("/").pop().replace(".html","");var embedUrl="https://pantherahive.com/embed/"+runId;var code='';navigator.clipboard.writeText(code).then(function(){var el=document.getElementById("ph-embed-lbl");if(el){el.textContent="Embed code copied!";setTimeout(function(){el.textContent="Get Embed Code";},2500);}});}