Influencer Campaign Planner
Run ID: 69cb5af761b1021a29a884852026-03-31Marketing
PantheraHive BOS
BOS Dashboard

Plan an influencer marketing campaign with ideal influencer profiles, outreach templates, contract terms, content guidelines, and ROI tracking framework.

Step 1 of 3: Audience Analysis for Influencer Campaign Planning

This deliverable provides a comprehensive analysis of the target audience, essential for building an effective influencer marketing campaign. Understanding your audience deeply is the bedrock for identifying the right influencers, crafting resonant content, and maximizing campaign ROI.


1. Executive Summary

A successful influencer campaign hinges on connecting with the right people through trusted voices. This analysis identifies the core demographic, psychographic, and behavioral traits of your target audience, pinpointing their online habits, content preferences, and influencer affinities. The insights derived will guide the selection of influencers, platforms, content formats, and messaging to ensure maximum engagement and conversion.


2. Target Audience Profile: Detailed Breakdown

To effectively plan an influencer campaign, we must first paint a clear picture of who we are trying to reach.

2.1. Demographics

  • Age Range: [To be specified by client, e.g., 25-45 years old] - This range often indicates different platform preferences and content consumption habits.
  • Gender Split: [To be specified by client, e.g., 60% Female, 40% Male] - Influences product appeal and messaging.
  • Geographic Location: [To be specified by client, e.g., Urban and suburban areas in US, UK, Canada, Australia] - Important for localized campaigns or market-specific product launches.
  • Income Level: [To be specified by client, e.g., Mid-to-high disposable income] - Affects purchasing power and willingness to invest in premium products/services.
  • Education Level: [To be specified by client, e.g., College-educated or pursuing higher education] - Can correlate with interests in educational content or specific niches.
  • Occupation: [To be specified by client, e.g., Young professionals, entrepreneurs, stay-at-home parents] - Impacts daily routines, pain points, and product utility.

2.2. Psychographics

  • Interests & Hobbies: [To be specified by client, e.g., Health & Wellness, Sustainable Living, Tech Gadgets, Travel, Home Decor, Personal Finance, Gaming, Beauty] - Direct indicators for niche influencer selection.
  • Values & Beliefs: [To be specified by client, e.g., Authenticity, Community, Innovation, Sustainability, Self-Improvement, Convenience, Value for Money] - Influences brand alignment and messaging tone.
  • Lifestyle: [To be specified by client, e.g., Busy professionals seeking efficiency, eco-conscious consumers, trend-aware early adopters, budget-conscious families] - Shapes how the product/service integrates into their lives.
  • Personality Traits: [To be specified by client, e.g., Ambitious, practical, creative, social, health-conscious] - Helps in matching influencer personalities.
  • Pain Points & Needs: [To be specified by client, e.g., Lack of time, desire for healthier alternatives, need for reliable product information, seeking community/belonging, financial stress] - What problems does our product/service solve for them?
  • Aspirations & Goals: [To be specified by client, e.g., Achieve fitness goals, improve career prospects, simplify daily routines, feel more confident, save money, learn new skills] - How does our product/service help them achieve these?

2.3. Behavioral Traits

  • Online Activity:

* Preferred Social Media Platforms: [To be specified by client, e.g., Instagram (Visual discovery, Stories, Reels), TikTok (Short-form entertainment, trends), YouTube (In-depth reviews, tutorials), Pinterest (Inspiration, product discovery), Facebook (Community, groups, news), LinkedIn (Professional insights, networking)] - Crucial for platform targeting.

* Content Consumption Habits: [To be specified by client, e.g., Short-form video (Reels, TikToks), long-form video (YouTube reviews), educational carousels, authentic 'day-in-the-life' vlogs, live streams, blog posts, podcasts] - Dictates content format strategy.

* Engagement Types: [To be specified by client, e.g., Liking, commenting, sharing to Stories, saving posts, direct messaging influencers, participating in polls] - Indicates how they interact with content.

  • Purchasing Habits:

* Decision-Making Process: [To be specified by client, e.g., Research-intensive, peer recommendations, impulse buys, value-driven] - How do they make purchase decisions?

* Key Purchase Drivers: [To be specified by client, e.g., Trust in recommendations, product reviews, discounts/promotions, brand reputation, ethical sourcing, convenience] - What motivates them to buy?

* Online vs. Offline Shopping: [To be specified by client, e.g., Primarily online, prefer in-store for certain items] - Relevant for call-to-action strategy.


3. Data Insights & Trends

Leveraging existing data and understanding current trends is vital for an impactful campaign.

3.1. Key Insights from Data (Hypothetical Examples)

  • Social Media Analytics (e.g., Instagram Insights):

Insight:* 70% of followers are female, aged 25-34, primarily located in major metropolitan areas.

Implication:* Focus influencer outreach on creators with a similar audience demographic and geographic reach.

  • Website Analytics (e.g., Google Analytics):

Insight:* High traffic from users searching for "sustainable [product category]" and "ethical [brand type]".

Implication:* Emphasize sustainability and ethical practices in influencer messaging, targeting eco-conscious influencers.

  • Customer Surveys/Feedback:

Insight:* Customers frequently mention "ease of use" and "time-saving" as primary benefits.

Implication:* Influencer content should highlight convenience and efficiency, perhaps through "hack" or "routine" style videos.

  • Competitor Analysis:

Insight:* Competitors are successfully engaging audiences with short-form video tutorials on TikTok.

Implication:* Prioritize short-form video content and consider TikTok as a primary platform.

3.2. Current Influencer Marketing Trends

  • Authenticity & Relatability: Audiences increasingly value genuine connections over polished perfection. Micro and nano-influencers often excel here.
  • Video-First Content: Short-form video (TikTok, Instagram Reels, YouTube Shorts) continues to dominate engagement, offering quick, digestible, and entertaining content. Long-form video for in-depth reviews and tutorials also remains strong on YouTube.
  • Niche Communities: Highly engaged, smaller communities built around specific interests (e.g., specific hobbies, sustainable living, obscure tech) offer higher conversion rates due to strong trust and relevance.
  • Creator Economy Growth: More individuals are becoming creators, leading to a wider pool of talent but also increased competition for audience attention.
  • Performance-Based Partnerships: Brands are shifting towards more measurable outcomes, seeking influencers who can drive specific actions (e.g., sales, sign-ups) rather than just impressions.
  • ESG (Environmental, Social, Governance) Alignment: Consumers are more conscious of brand values. Influencers who align with ethical and sustainable practices resonate strongly.

4. Recommendations for Influencer Campaign Strategy

Based on the audience analysis, here are strategic recommendations to inform your influencer campaign.

4.1. Influencer Persona Matching

  • Prioritize Niche & Micro-Influencers: These creators often have highly engaged audiences that closely match our psychographic profile, leading to higher conversion rates due to perceived authenticity and trust.
  • Align Values: Seek influencers whose personal brand values (e.g., sustainability, community, innovation) align with our brand's mission to ensure genuine endorsement.
  • Content Style Match: Identify influencers whose content style (e.g., educational, humorous, aesthetic, review-focused) naturally fits the type of content our audience prefers.
  • Audience Demographics: Cross-reference influencer audience demographics with our target profile (age, gender, location) to ensure audience overlap.

4.2. Content Strategy & Messaging

  • Focus on Value & Problem-Solving: Content should clearly articulate how our product/service addresses the audience's pain points and helps them achieve their aspirations.
  • Prioritize Video Content: Develop a strong strategy for short-form video (Reels, TikToks) for quick engagement and trend participation, alongside long-form video (YouTube) for detailed product demonstrations and reviews.
  • Authentic Storytelling: Encourage influencers to share personal stories and experiences with the product/service, emphasizing real-life integration and benefits. Avoid overly promotional or scripted content.
  • Educational & Inspirational Content: Leverage influencers to create tutorials, how-to guides, "day in the life" segments, or inspirational content that showcases the product's utility and benefits.
  • Call to Action (CTA) Clarity: Implement clear, concise, and compelling CTAs tailored to the platform (e.g., "Link in Bio," "Swipe Up," "Use Code [BRAND] for X% off," "Shop Now").

4.3. Platform Prioritization

  • Primary Platforms: [To be specified by client, e.g., Instagram & TikTok] - For visual storytelling, trend participation, and broad reach within the target demographic.
  • Secondary Platforms: [To be specified by client, e.g., YouTube & Pinterest] - For in-depth reviews, tutorials, inspirational content, and longer-term discoverability.
  • Consider Niche Platforms: Explore platforms or communities relevant to specific psychographic segments (e.g., Reddit communities, specific forums, LinkedIn for B2B audiences).

5. Next Steps

This audience analysis provides the foundational insights. The subsequent steps will build directly upon this data.

  1. Develop Detailed Influencer Personas: Create 2-3 detailed influencer archetypes based on the audience profile, outlining their ideal audience demographics, content style, values, and platform expertise.
  2. Influencer Identification & Vetting: Begin the process of researching and identifying specific influencers who align with the developed personas and whose audience data mirrors our target audience.
  3. Content Concept Brainstorming: Based on audience preferences, brainstorm specific content themes, formats, and messaging angles that will resonate most effectively.
  4. Define Campaign KPIs: Establish clear, measurable Key Performance Indicators (KPIs) for the campaign, directly linked to audience engagement and conversion goals.

gemini Output

Strategic Influencer Campaign Plan: Elevating Your Brand Presence

Welcome to your comprehensive blueprint for a high-impact influencer marketing campaign. This detailed plan outlines every critical step, from identifying your ideal brand advocates to measuring the tangible return on your investment. Our goal is to forge authentic connections, amplify your message, and drive measurable results for your brand.


1. Defining Your Ideal Influencer Profiles: Finding Your Brand's Voice

Identifying the right influencers is paramount to an authentic and effective campaign. We're not just looking for reach; we're seeking genuine resonance and alignment with your brand values and target audience.

Who Are We Looking For? Key Characteristics:

Our ideal influencers will possess a combination of the following attributes:

  • Niche Alignment: Their content and audience should directly align with our product/service category and industry.
  • Audience Demographics: A significant portion of their audience must match our target customer profile (age, gender, location, interests).
  • Authentic Engagement: High engagement rates (likes, comments, shares, saves) indicate a genuine connection with their followers, not just a large follower count.
  • Content Quality & Style: Professional, visually appealing, and consistent content that aligns with our brand's aesthetic and messaging standards.
  • Brand Fit & Values: A personal brand and communication style that complements our brand's voice, tone, and ethical stance.
  • Track Record: History of successful, transparent, and compliant brand collaborations.

Influencer Tiers & Focus:

We will target a balanced mix of influencer tiers to maximize both broad reach and deep engagement:

  • Tier 1: Macro-Influencers (100K+ followers)

* Focus: Broad awareness, brand visibility, aspirational content.

* Characteristics: Established presence, high production value, strong industry authority.

* Content Type: High-impact visual posts, integrated storytelling, event appearances.

  • Tier 2: Mid-Tier Influencers (10K - 100K followers)

* Focus: Niche authority, deeper engagement, targeted reach.

* Characteristics: Strong community, higher engagement rates, perceived as more relatable experts.

* Content Type: Product reviews, tutorials, lifestyle integration, Q&A sessions.

  • Tier 3: Micro/Nano-Influencers (1K - 10K followers)

* Focus: Authenticity, hyper-local/niche reach, community building, user-generated content (UGC) feel.

* Characteristics: Highly engaged and loyal followers, seen as trusted peers, excellent for driving conversions in specific segments.

* Content Type: Authentic testimonials, "day in the life" content, product features in real-world scenarios.

Actionable Profile Checklist:

When evaluating potential influencers, use this checklist to ensure a strategic fit:

  • Audience Demographics Match: Yes/No (Specify percentage)
  • Engagement Rate (Avg.): [Target %] %
  • Content Quality: High/Medium/Low
  • Brand Tone Alignment: Perfect/Good/Needs Guidance
  • Previous Brand Partnerships: Relevant/Irrelevant/None (Check for competitor collaborations)
  • Authenticity Score: [1-5] (Based on comment quality, follower growth)
  • Compliance History: Clean/Red Flags

2. Crafting Compelling Outreach: Your First Impression

A well-crafted outreach message is crucial for capturing an influencer's attention and sparking their interest in a partnership. Personalization, clarity, and a clear value proposition are key.

Outreach Strategy Best Practices:

  • Personalize Everything: Reference specific content, recent achievements, or shared values.
  • Be Clear & Concise: State your purpose and offer upfront.
  • Highlight Mutual Value: Explain what's in it for them (compensation, brand alignment, creative freedom, audience exposure).
  • Provide a Clear CTA: Guide them on the next step.
  • Professional Tone: Maintain respect and enthusiasm.

Outreach Templates:

Template 1: Initial Cold Outreach (Via Email/DM)

Subject: Collaboration Opportunity with [Your Brand Name] – [Influencer's Name]

Hi [Influencer's Name],

My name is [Your Name] and I'm the [Your Title] at [Your Brand Name]. I've been following your work on [Platform, e.g., Instagram] for a while now, and I'm consistently impressed by [mention something specific and genuine, e.g., "your ability to connect with your audience on sustainable living," or "your beautiful photography style"]. In particular, I loved your recent post about [specific post/topic].

At [Your Brand Name], we [briefly describe your mission/what you do, e.g., "create eco-friendly skincare products," or "empower small businesses with innovative software"]. We believe your authentic voice and engaged community would be a perfect fit to introduce our [product/service] to your audience.

We're planning an exciting campaign around [campaign theme/product launch] and would love to explore a potential partnership with you. We're looking for creators who can [mention desired content style, e.g., "share their genuine experience," or "create inspiring visual stories"].

Would you be open to a brief chat next week to discuss this opportunity further and share more details about our brand and campaign? Please let me know what time works best for you, or if you prefer, I can send over a detailed brief.

Looking forward to hearing from you!

Best regards,

[Your Name]

[Your Title]

[Your Brand Name]

[Your Website]

[Your Social Media Link]


Template 2: Follow-Up Message

Subject: Following Up: Collaboration Opportunity with [Your Brand Name]

Hi [Influencer's Name],

Hope you're having a great week!

I'm just following up on my previous email regarding a potential collaboration with [Your Brand Name]. I understand you're incredibly busy, but I genuinely believe this partnership could be a fantastic mutual opportunity.

To quickly reiterate, we admire your [mention specific quality again] and see a strong alignment between your audience and our [product/service]. We're excited about the possibility of you showcasing [key benefit/product] in your unique style.

If you're interested, please let me know. We're flexible and happy to tailor the collaboration to best suit your content and audience.

Thanks again for your time and consideration.

Best,

[Your Name]


Template 3: Partnership Discussion (After Initial Interest)

Subject: Next Steps: [Your Brand Name] x [Influencer's Name] Partnership

Hi [Influencer's Name],

Thank you for your interest in partnering with [Your Brand Name]! We're thrilled about the potential to work together.

As discussed, our campaign focuses on [campaign theme] and we envision content that [reiterate desired content style, e.g., "authentically integrates our product into your daily routine"].

We're proposing the following deliverables on [Platform(s)]:

  • [Number] x [Content Type, e.g., Instagram Feed Post]
  • [Number] x [Content Type, e.g., Instagram Story Slides]
  • [Number] x [Content Type, e.g., TikTok Video]
  • [Specific hashtags, mentions, CTAs]

Our proposed compensation for this scope of work is [Compensation details - e.g., a fixed fee of $X, or product value + commission]. We're also happy to discuss your standard rates and packages.

We've attached a detailed creative brief for your review, which includes more about our brand, campaign objectives, and content guidelines.

Please let us know if these terms align with your expectations, or if you have any questions or alternative suggestions. We're excited to make this a successful collaboration!

Best regards,

[Your Name]


3. Ensuring Mutual Success: Essential Partnership Agreements

A clear and comprehensive contract protects both your brand and the influencer, ensuring expectations are aligned and deliverables are met. Below are the critical terms to include in every influencer agreement.

Key Contract Clauses:

  1. Scope of Work & Deliverables:

* Specific Content: Clearly define the number and type of posts (e.g., 1 Instagram feed post, 3 Instagram Stories, 1 TikTok video).

* Platforms: Specify all platforms where content will be posted.

* Key Message Points: Mandatory brand messages, product features, or calls to action.

* Required Elements: Mandatory hashtags, brand tags (@), links (e.g., in bio, swipe up).

* Posting Schedule: Specific dates or date ranges for content publication.

* Draft Submission Deadlines: Dates for submitting content for review.

  1. Compensation:

* Payment Structure: Fixed fee, product exchange, commission-based (e.g., affiliate links, unique discount codes), or a hybrid.

* Payment Amount: Exact monetary figure or product value.

* Payment Schedule: When and how payment will be made (e.g., 50% upfront, 50% upon completion; Net 30 days post-campaign).

* Expenses: Clarify if any additional expenses (travel, production costs) are covered.

  1. Content Rights & Usage:

* Ownership: Who owns the raw content and the final published content.

* Brand Usage Rights: Granting the brand permission to repost, share, and repurpose the influencer's content on its own channels (social media, website, ads).

* Usage Term: Duration of brand's usage rights (e.g., 1 year, perpetual).

* Exclusivity: If the brand has exclusive rights to the content.

  1. Disclosure Requirements:

* Compliance: Mandatory adherence to all relevant advertising standards (e.g., FTC guidelines in the US, ASA in the UK).

* Clear Disclosure: Specific language and placement for #ad, #sponsored, #partner, or equivalent disclosures.

  1. Exclusivity:

* Competitor Restriction: Prohibiting the influencer from promoting direct competitors during a specified period (e.g., 30 days before, during, and 30 days after the campaign).

* Category Exclusivity: Broader restrictions if applicable.

  1. Content Approval Process:

* Review Stages: Number of revisions allowed for content drafts.

* Approval Timeframes: Deadlines for brand review and feedback.

* Final Approval: Requirement for brand's final approval before publication.

  1. Performance Metrics (if applicable for performance-based campaigns):

* Agreed KPIs: Specific metrics to be tracked (e.g., clicks, conversions, unique uses of discount code).

* Reporting: Requirement for the influencer to provide data or access to analytics.

  1. Termination Clause:

* Conditions for Termination: Breach of contract, failure to deliver, ethical misconduct.

* Notice Period: Required notice for termination.

* Consequences: What happens to payment and content rights upon termination.

  1. Confidentiality:

* Non-Disclosure: Agreement not to share confidential campaign details or proprietary information.

Call to Action: Secure your partnerships with clarity and confidence. A robust contract is the foundation for a successful and respectful collaboration.


4. Inspiring Authentic Storytelling: Your Creative Blueprint

A comprehensive creative brief empowers influencers to produce engaging, on-brand content while maintaining their authentic voice. This document guides their creativity without stifling it.

Campaign Overview:

  • Campaign Theme/Concept: [E.g., "Summer Glow Up," "Sustainable Living Heroes," "Innovate Your Workflow"]
  • Core Message: [E.g., "Achieve radiant skin naturally," "Making eco-friendly choices easy," "Boost productivity with intuitive tools"]
  • Campaign Goal: [E.g., "Increase brand awareness by 20%," "Drive 500 new product sign-ups," "
gemini Output

This document outlines a comprehensive plan for executing a successful influencer marketing campaign. It covers all critical aspects from identifying the right partners to measuring the campaign's impact, ensuring a strategic and professional approach.


Influencer Campaign Planner: Optimized & Finalized Output

This finalized plan provides a detailed framework for your influencer marketing campaign, covering ideal influencer profiles, outreach strategies, contractual terms, content requirements, and a robust ROI tracking framework.


1. Ideal Influencer Profiles

Identifying the right influencers is paramount to campaign success. Our ideal influencer profiles are categorized by their tier, ensuring a diverse and effective reach.

A. Influencer Tiers & Characteristics

  • Nano-Influencers (1K - 10K Followers):

* Characteristics: Highly niche-specific audiences, strong community trust, excellent engagement rates (5-10%+), often more affordable.

* Best For: Authenticity, hyper-targeted reach, user-generated content (UGC) feel, driving word-of-mouth.

* Considerations: May require more individual management, limited reach per influencer.

  • Micro-Influencers (10K - 100K Followers):

* Characteristics: Engaged and loyal communities, perceived as experts in their niche, good balance of reach and authenticity, competitive pricing.

* Best For: Driving conversions, brand awareness within specific communities, product reviews and demonstrations.

* Considerations: Still require personalized outreach, may have less professional experience.

  • Macro-Influencers (100K - 1M Followers):

* Characteristics: Broad reach, established personal brand, often have professional teams (agents/managers), higher production quality expectations.

* Best For: Significant brand awareness, driving traffic, large-scale campaigns, reaching broader demographics.

* Considerations: Higher costs, potentially lower engagement rates than micro/nano, less perceived authenticity.

  • Mega-Influencers / Celebrities (1M+ Followers):

* Characteristics: Massive reach, mainstream appeal, high production value, often command premium fees.

* Best For: Mass market brand awareness, launching new products, PR amplification.

* Considerations: Very high costs, often managed by agencies, lowest engagement rates, can feel less authentic.

B. Key Selection Criteria (Across All Tiers)

  • Audience Demographics: Must align with our target customer (age, gender, location, interests).
  • Niche Relevance: Content and personal brand must be highly relevant to our product/service category.
  • Engagement Rate: A strong indicator of an active and loyal audience (e.g., 3%+ for macro, 5%+ for micro/nano).
  • Content Quality & Aesthetic: High-quality visuals, clear audio (for video), consistent brand aesthetic that complements ours.
  • Brand Alignment: Influencer's personal values, past collaborations, and general tone must align with our brand identity. Avoid controversial figures.
  • Authenticity & Trust: Evidence of genuine connection with their audience, not just sponsored posts.
  • Past Performance: Look for successful past brand collaborations, positive feedback from other brands.
  • Follower Authenticity: Check for suspicious follower growth patterns or high numbers of bot followers using audit tools.

2. Outreach Templates

Effective outreach is crucial for securing partnerships. These templates are designed to be professional, personalized, and persuasive.

A. Initial Contact Template

Subject: Collaboration Opportunity: [Your Brand Name] x [Influencer's Handle]

Dear [Influencer Name],

My name is [Your Name] and I'm the [Your Title] at [Your Brand Name]. I've been a long-time admirer of your content, particularly your [mention specific content piece, e.g., "recent review of eco-friendly products" or "engaging storytelling around travel"]. Your authentic voice and highly engaged audience at [mention platform, e.g., "on Instagram"] truly resonate with us.

At [Your Brand Name], we [briefly describe your brand and what you do, e.g., "create sustainable, high-quality [product type] that helps people [benefit]"]. We believe your audience would genuinely appreciate our [mention key product/service and its unique selling proposition].

We're currently planning an exciting campaign focused on [briefly describe campaign theme/goal, e.g., "promoting mindful living through sustainable choices"] and we immediately thought of you as an ideal partner. We envision a collaboration where you could [suggest a specific content idea, e.g., "showcase our new [product] in your daily routine" or "create an engaging unboxing video"].

Would you be open to a brief chat to discuss this potential partnership further and share more details about our brand and campaign vision? Please let me know your availability in the coming days.

Thank you for your time and consideration.

Best regards,

[Your Name]

[Your Title]

[Your Brand Name]

[Your Website]

[Your Social Media Link]

B. Follow-Up Template (If no response after 3-5 business days)

Subject: Following Up: Collaboration Opportunity: [Your Brand Name] x [Influencer's Handle]

Dear [Influencer Name],

Hope this email finds you well.

I'm just following up on my email from [Date of previous email] regarding a potential collaboration between [Your Brand Name] and you.

I understand you have a busy schedule, but I truly believe this partnership could be a fantastic fit for both your brand and ours, offering genuine value to your audience interested in [mention specific niche/interest].

We're excited about the possibility of [reiterate a key benefit for them or their audience, e.g., "introducing your followers to a product that aligns perfectly with your sustainable lifestyle content"].

If you're interested in learning more, please let me know. We're happy to tailor our proposal to best suit your content style and audience.

Looking forward to hearing from you!

Best regards,

[Your Name]

C. Proposal / Negotiation Template (After initial interest is confirmed)

Subject: Detailed Proposal: [Your Brand Name] Influencer Campaign

Dear [Influencer Name],

Thank you for your interest in partnering with [Your Brand Name]! It was a pleasure [mention previous interaction, e.g., "speaking with you earlier" or "receiving your positive response"].

As discussed, we are planning a campaign focused on [Campaign Goal/Theme] and we believe your unique voice and engaged audience are perfectly suited to help us achieve [specific objective, e.g., "raise awareness for our new product line"].

Here's a detailed overview of our proposed collaboration:

  • Campaign Goal: [e.g., Increase brand awareness, drive sales of X product, generate UGC]
  • Key Message: [e.g., "Sustainable living is accessible and stylish with [product name]"]
  • Deliverables:

* [Number] x Instagram Feed Posts (static image/carousel, with caption)

* [Number] x Instagram Stories (3-5 frames, swipe-up link)

* [Number] x TikTok Videos (15-30 seconds, featuring product)

* [Number] x Blog Post / YouTube Video (if applicable)

Optional:* [Number] x Live Session / Q&A

  • Timeline:

* Content Submission for Approval: [Date]

* Posting Dates: [Start Date] - [End Date]

  • Compensation:

* Option 1 (Monetary): $[Amount] for all agreed deliverables.

* Option 2 (Product + Monetary): $[Amount] + [Product Value/Details]

* Option 3 (Product Only): [Product Value/Details] (typically for nano/micro influencers)

Note:* We are open to discussing your standard rates and finding a mutually beneficial arrangement.

  • Usage Rights: We kindly request [X months/perpetual] usage rights for your created content for our owned marketing channels (website, social media, ads).
  • Disclosure: Full compliance with FTC/ASA guidelines is required (e.g., #Ad, #Sponsored, #Partner).

We are flexible and eager to collaborate on content ideas that feel authentic to your brand while effectively conveying our message. Please let us know if this proposal aligns with your expectations and if you have any questions or alternative suggestions.

We look forward to the possibility of working together!

Best regards,

[Your Name]

[Your Title]

[Your Brand Name]


3. Contract Terms

A clear and comprehensive contract is essential to protect both parties and ensure a smooth campaign execution. This section outlines key terms to include.

A. Core Contract Clauses

  1. Scope of Work & Deliverables:

* Detailed list of all content types (e.g., 1 Instagram feed post, 3 Instagram stories, 1 TikTok video).

* Specific requirements for each (e.g., length, format, mandatory mentions).

* Number of revisions allowed.

  1. Payment Terms:

* Agreed compensation amount (monetary, product, or combination).

* Payment schedule (e.g., 50% upfront, 50% upon completion; Net 30 days after invoice).

* Method of payment (e.g., bank transfer, PayPal).

* Invoicing requirements.

  1. Content Ownership & Usage Rights:

* Influencer retains ownership of original content.

* Brand granted specific usage rights:

* Term (e.g., 6 months, 1 year, perpetual).

* Channels (e.g., brand's social media, website, email, paid ads).

* Right to edit/repurpose content (with influencer's prior approval for significant edits).

* Clarify if rights are exclusive or non-exclusive.

  1. Disclosure Requirements:

* Mandatory compliance with relevant advertising standards (e.g., FTC guidelines in the US, ASA in the UK).

* Specific hashtags and disclosures required (e.g., #Ad, #Sponsored, #BrandPartner).

* Requirement for disclosures to be prominent and easily visible.

  1. Exclusivity:

* Specify if the influencer is prohibited from promoting competing brands during a defined period (e.g., 30 days before/after campaign launch).

* Define the scope of "competing brands."

  1. Approval Process:

* Timeline for content submission by influencer.

* Timeline for brand review and feedback.

* Number of revision rounds.

  1. Performance & Guarantees (Optional, for high-value campaigns):

* Minimum engagement rates or reach targets (if agreed upon).

* Remedies for underperformance (e.g., additional content, partial refund).

  1. Confidentiality:

* Agreement not to disclose proprietary campaign information, terms, or unreleased product details.

  1. Termination Clause:

* Conditions under which either party can terminate the agreement (e.g., breach of contract, failure to deliver).

* Consequences of termination (e.g., pro-rata payment, content removal).

  1. Indemnification:

* Influencer agrees to indemnify the brand against claims arising from their content (e.g., copyright infringement, false claims).

  1. Governing Law:

* Which jurisdiction's laws will govern the contract.

B. Best Practices for Contracts

  • Legal Review: Always have a legal professional review your contract templates.
  • Clarity: Ensure all terms are unambiguous and easy to understand.
  • Mutual Benefit: The contract should protect both parties fairly.
  • Scalability: Consider having tiered contracts for different influencer levels/campaign values.

4. Content Guidelines

Clear content guidelines ensure brand consistency, message accuracy, and effective communication.

A. Core Content Requirements

  • Key Message & Call to Action (CTA):

* Clearly defined primary message (e.g., "Our [product] makes [benefit] easy").

* Specific CTA (e.g., "Shop now at [link]", "Use code [DISCOUNT] for X% off").

  • Brand Voice & Tone:

* Example: "Enthusiastic, approachable, educational, authentic."

* Avoid language that is overly promotional, misleading, or off-brand.

  • Visual Style & Aesthetics:

* Color Palette: Adhere to brand colors or complementary tones.

* Lighting: Natural, bright lighting preferred.

* Product Placement: Product should be clearly visible and naturally integrated into content.

* Backgrounds: Clean, relevant, and aesthetically pleasing.

* Filters/Editing: Consistent with brand's visual identity.

  • Mandatory Elements:

* Hashtags: Specific campaign hashtags (e.g., #BrandNamePartner, #ProductLaunch).

* Mentions/Tags: Tagging brand's official social media handles.

* Links: Specific UTM-tracked links or swipe-up links for stories.

* Disclosure: Prominent #Ad or #Sponsored disclosure as per legal requirements.

  • Prohibited Content:

* Offensive Language/Imagery: No profanity, hate speech, or inappropriate visuals.

* Misleading Claims: No exaggerated or false product claims.

* Sensitive Topics: Avoid controversial political, religious, or social topics unless explicitly approved.

* Competitor Mentions: No mention or comparison to competitor products.

* Illegal Activities: No promotion of illegal activities.

B. Content Format Specifics

  • Instagram Feed Post (Image/Carousel):

* Image Ratio: 1:1 or 4:5 vertical recommended. High resolution.

* Caption: 150-2,200 characters. Include key message, CTA, 3-5 relevant hashtags, and brand tag.

  • Instagram Stories:

* Format: 1080x1920px (9:16 vertical).

* Content: 3-5 frames recommended. Can include talking head, product demo, poll, Q&A.

* CTA: Clear swipe-up or link sticker.

* Disclosure: Prominent on each frame if possible.

  • TikTok Video:

* Format: 1080x1920px (9:16 vertical).

* Length: 15-60 seconds. Engaging, authentic, and native to TikTok trends.

* Audio: Use trending sounds where appropriate.

* CTA: Verbal and/or text overlay CTA.

* Disclosure: Verbal and/or text overlay.

  • YouTube Video:

* Format: 1920x1080px (16:9 horizontal).

* Length: Dependant on content type (e.g., 5-10 min review, 15-20 min tutorial).

* Integration: Product integration should feel natural.

* CTA: Verbal CTA

influencer_campaign_planner.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);}});}