Social Media Campaign
Run ID: 69cb554161b1021a29a880382026-03-31Marketing
PantheraHive BOS
BOS Dashboard

This output provides detailed prompts and guidance for generating high-quality images for your social media campaign, aligning with the "sharper4k → generate_image" step. The goal is to create visuals that are professional, engaging, and consistent with a modern brand aesthetic, suitable for a new product launch or brand awareness campaign.


Social Media Campaign: Image Generation Brief

This document outlines the detailed specifications and creative direction for generating key visual assets for your social media campaign. The focus is on creating a primary hero image and suggesting variations to establish a cohesive visual identity across platforms.


1. Campaign Context & Objective (Assumed)

For the purpose of this image generation, we are assuming a campaign focused on launching a new, innovative smart home device (e.g., a smart speaker, ambient light, or minimalist hub) for a brand focused on modern design, seamless technology, and sophisticated living.

Objective: To generate high-quality, aspirational images that showcase the product's design, integrate it into a desirable lifestyle, and evoke a sense of calm, innovation, and effortless sophistication.


2. Core Image Generation Prompt: "AuraFlow Device - Hero Product Shot"

This prompt is designed to generate a pristine, high-end hero image of the product, suitable for primary campaign use across various social media platforms (Instagram, Facebook, LinkedIn, X, etc.).

Visual Concept: A sleek, minimalist smart home device (let's call it "AuraFlow") presented in a clean, modern, and aspirational home environment. The image should convey sophistication, technological elegance, and seamless integration into a premium lifestyle.

Detailed Prompt for AI Image Generator:

text • 3,168 chars
Subject: A sleek, minimalist, pebble-shaped smart home device named "AuraFlow." It features a seamless matte white ceramic or frosted glass finish with a subtle, circular LED light band that emits a soft, calming "AuraTech blue" (a muted, sophisticated cyan-blue) glow. The device should be the undeniable focal point.

Setting: A bright, modern, minimalist living space or study. The device rests elegantly on a polished light concrete or light oak wood surface (e.g., a minimalist side table or a custom-built shelf). In the soft, out-of-focus background, subtly visible elements include:
    - A large, sun-drenched window with sheer white curtains, allowing diffused natural light.
    - A designer ceramic vase with a single, elegant minimalist plant (e.g., a single stem of eucalyptus or a small, sculptural succulent).
    - A stack of art books or a high-end magazine, slightly blurred, implying a sophisticated user.
    - Clean, architectural lines in the background, reinforcing modern design.

Style: Hyper-realistic, high-end commercial product photography. Emphasize clean lines, pristine surfaces, and contemporary design. The aesthetic should be akin to Apple product photography meets architectural digest – sophisticated, clean, and aspirational.

Mood/Emotion: Serene, innovative, sophisticated, effortless, tranquil, aspirational, premium. The image should evoke a sense of calm and advanced technology seamlessly integrated into daily life.

Composition: Eye-level shot, slightly wide angle to capture the environment without overwhelming the product. The AuraFlow device should be strategically placed using the rule of thirds, occupying roughly 30-40% of the frame. Utilize a very shallow depth of field to beautifully isolate the product, rendering the background in a soft, pleasing bokeh. Ensure ample clean negative space around the product.

Lighting: Soft, diffused natural daylight originating from the large window, creating gentle, subtle highlights and shadows. The device's internal "AuraTech blue" glow should be delicately visible, adding a sophisticated ambient light without overpowering the scene. No harsh shadows or direct, strong light sources.

Color Palette: Predominantly clean whites, light grays, warm beige tones from wood/concrete, with the subtle "AuraTech blue" accent from the device's glow. The overall palette should be minimalist, refined, and calming.

Technical Specifications: Ultra HD, 8K resolution, cinematic quality, professional product photography, sharp focus on the device, extremely shallow depth of field (f/1.8-f/2.8), macro details, captured with a high-end mirrorless camera (e.g., Canon R5 or Sony A7R IV) and a premium prime lens (e.g., 85mm or 100mm macro lens), simulated softbox lighting setup for even illumination, studio quality, high resolution. Aspect ratio 16:9 (for versatility across platforms, easily cropped to 1:1 or 4:5).

Negative Prompts: blurry, noisy, cluttered, messy, dark, oversaturated colors, cartoon, unrealistic, distorted, text, logo, reflections, fingerprints, scratches, old, vintage, busy background, too many distracting elements, low quality, pixelated, amateur.
Sandboxed live preview

Social Media Campaign: Content Calendar - Step 1 of 2: Generate Content Calendar

This comprehensive content calendar outlines a two-week social media campaign designed to elevate the presence and engagement for QuantumLeap AI - Revolutionizing Data Analytics. This deliverable provides specific, actionable content ready for publishing across key platforms, focusing on brand awareness, engagement, and lead generation.


Campaign Overview

  • Campaign Title: Unleash Your Data's Full Potential with QuantumLeap AI
  • Primary Objective: Increase brand awareness, drive engagement, and generate interest in QuantumLeap AI's innovative data analytics solutions among target professionals.
  • Target Audience: Business leaders, data scientists, IT professionals, decision-makers, and entrepreneurs in medium to large enterprises seeking advanced data insights.
  • Key Themes:

* Innovation: Highlighting QuantumLeap AI's cutting-edge technology and unique approach.

* Efficiency & Automation: Showcasing how the solution streamlines data processes.

* Actionable Insights: Emphasizing the ability to transform raw data into strategic decisions.

* Competitive Advantage: Positioning QuantumLeap AI as a tool for market leadership.

* Future of Data: Engaging with industry trends and the evolving landscape of AI-driven analytics.

  • Key Platforms: LinkedIn, X (formerly Twitter), Instagram
  • Campaign Duration: 2 Weeks (Monday to Friday posting schedule, with weekend engagement opportunities)
  • Tone & Voice: Professional, innovative, insightful, empowering, approachable.

Content Calendar: Week 1

Dates: [Insert Specific Dates for Week 1 Here - e.g., October 28 - November 1]

| Day | Date | Platform | Content Type | Headline / Caption | Body Text | Call to Action | Visual/Media Idea | Hashtags |

| :-- | :-- | :--------- | :----------- | :----------------- | :-------- | :------------- | :---------------- | :-------- |

| Monday | [Date] | LinkedIn | Product Announcement (Text + Image/Video) | Introducing QuantumLeap AI: Transform Your Data, Transform Your Business. | The future of data analytics is here. QuantumLeap AI empowers your organization with unparalleled insights, predictive capabilities, and a competitive edge. Say goodbye to fragmented data and hello to intelligent, actionable strategies. Discover how our innovative platform is redefining what's possible. | Learn More & Request a Demo Today! [Link to Website/Demo Page] | High-quality brand video (15-30s) showcasing UI/benefits, or a sleek graphic with product branding. | \#QuantumLeapAI \#DataAnalytics \#AIForBusiness \#Innovation \#BigData |

| | | X/Twitter | Teaser/Launch Post | 🚀 The Future of Data Just Leaped Forward! | Get ready to experience data insights like never before. QuantumLeap AI is officially here to revolutionize your analytics. Stay tuned for deeper dives! | Explore QuantumLeap AI: [Link to Website] | Dynamic GIF or short animation of data transformation, or a visually striking product logo. | \#QuantumLeapAI \#AI \#DataScience \#TechLaunch |

| | | Instagram | Carousel Post (Image/Infographic) | Unlock Your Data's True Potential with QuantumLeap AI! | Tired of complex data? We make it simple, smart, and actionable. Swipe to see how QuantumLeap AI can elevate your business. | Visit our bio for more! [Link in Bio] | Carousel: 1. Catchy intro graphic. 2. "Problem: Fragmented Data". 3. "Solution: QuantumLeap AI". 4. "Benefit: Actionable Insights". 5. CTA graphic. | \#QuantumLeapAI \#DataInsights \#BusinessIntelligence \#TechInnovation \#Analytics |

| Tuesday | [Date] | LinkedIn | Problem/Solution Focus (Article Link) | Are You Drowning in Data but Starved for Insights? QuantumLeap AI is Your Lifeline. | Many businesses struggle to convert vast amounts of data into meaningful strategies. Our latest article explores common data challenges and reveals how QuantumLeap AI provides the clarity and foresight you need to make informed decisions. Stop guessing, start knowing. | Read the Full Article Here: [Link to Blog Post] | Professional image of a business person gaining clarity from complex data, or a graph showing improvement. | \#DataChallenges \#BusinessStrategy \#AIAnalytics \#ProblemSolved \#QuantumLeapAI |

| | | X/Twitter | Quick Stat + Solution | Did you know 87% of data projects fail to deliver? 🤯 Don't be a statistic! QuantumLeap AI ensures your data initiatives succeed with intelligent automation & real-time insights. | See how we change the game: [Link to Key Feature Page] | Graphic with a bold statistic and the QuantumLeap AI logo. | \#DataFailure \#AISuccess \#BusinessTech \#QuantumLeapAI |

| | | Instagram | Infographic/Reel | The Data Dilemma: Solved by QuantumLeap AI! | From overwhelming spreadsheets to powerful, predictive models – see how QuantumLeap AI simplifies complex data challenges. | Tap to learn more! [Link to Website] | Short, engaging reel (15-30s) or infographic demonstrating a data problem transforming into a clear solution. | \#DataSolutions \#AnalyticsSimplified \#AItools \#QuantumLeapAI |

| Wednesday | [Date] | LinkedIn | Feature Highlight (Text + Video/Image) | Beyond Dashboards: Experience QuantumLeap AI's Predictive Power. | What if you could anticipate market shifts and customer needs before they happen? QuantumLeap AI's advanced predictive analytics don't just show you what happened, but what will happen, empowering proactive decision-making. | Discover Predictive Analytics in Action: [Link to Feature Page/Demo] | Short video demo (1 min) of the predictive analytics interface or a graphic illustrating future forecasting. | \#PredictiveAnalytics \#FutureReady \#DataScience \#AIInnovation \#QuantumLeapAI |

| | | X/Twitter | Poll/Question | Poll: What's your biggest challenge with current data tools? 📊 | A) Complexity B) Lack of Real-time Insights C) Slow Processing D) Poor Predictions. Let us know! 👇 | Tell us your thoughts! | X Poll with the options. | \#DataPoll \#AnalyticsChallenges \#TechSurvey \#QuantumLeapAI |

| | | Instagram | "How-To" Tip / Short Demo | Quick Tip: Get Smarter Insights, Faster! | See how QuantumLeap AI's intuitive interface helps you generate actionable reports in minutes, not hours. | DM us for a personalized walkthrough! | Short, snappy screen recording (15-30s) showing a quick report generation. | \#DataTips \#AIHacks \#Productivity \#QuantumLeapAI |

| Thursday | [Date] | LinkedIn | Thought Leadership/Industry Insight (Blog Post Link) | The AI Revolution in Data: Are You Keeping Pace? | The landscape of data analytics is evolving rapidly with AI at its core. Our latest thought piece delves into how AI is reshaping industries and why embracing intelligent analytics like QuantumLeap AI is no longer optional, but essential for future growth. | Read Our Insights: [Link to Industry Blog Post] | Image of a futuristic data visualization or a professional headshot of an industry expert. | \#AIRevolution \#FutureOfData \#ThoughtLeadership \#DigitalTransformation \#QuantumLeapAI |

| | | X/Twitter | Engaging Question | What's one data insight that completely changed your business strategy? Share your success stories! 👇 | We believe in the power of data to transform. What's your story? | Join the conversation! | Engaging image related to data insights or a simple text-based question. | \#DataSuccess \#BusinessInsights \#ShareYourStory \#QuantumLeapAI |

| | | Instagram | "Did You Know?" Fact | Did You Know? Data-driven companies are 23x more likely to acquire customers! | QuantumLeap AI helps you leverage this power to grow your business. | Learn how in our bio! [Link in Bio] | Visually appealing graphic with the "Did You Know?" fact prominently displayed. | \#DataFacts \#BusinessGrowth \#AIStatistics \#QuantumLeapAI |

| Friday | [Date] | LinkedIn | Engaging Question/Weekend Teaser | Ready to make your weekend data-free? QuantumLeap AI handles the heavy lifting, so you can focus on strategy, not spreadsheets. What are your weekend plans? | Let QuantumLeap AI simplify your workweek. [Link to Free Trial/Demo] | Relaxing image (e.g., someone enjoying their weekend) juxtaposed with a subtle hint of data efficiency. | \#WorkLifeBalance \#SmartAnalytics \#WeekendVibes \#QuantumLeapAI |

| | | X/Twitter | Success Story Snippet | "QuantumLeap AI cut our analysis time by 60% and boosted our ROI by 15%!" - Satisfied Client | Imagine what it can do for you. | Discover more success stories: [Link to Testimonials Page] | Quote card graphic with client name (if permissible) and company logo. | \#ClientSuccess \#ROITransformation \#AIResults \#QuantumLeapAI |

| | | Instagram | Behind-the-Scenes / Team Photo | Meet the Minds Behind QuantumLeap AI! | Our passionate team is dedicated to building the future of data analytics. Wishing everyone a fantastic weekend! | Stay tuned for more next week! | Genuine, professional team photo or a candid shot from the office. | \#TeamQuantumLeap \#BehindTheScenes \#TechTeam \#CompanyCulture \#QuantumLeapAI |


Content Calendar: Week 2

Dates: [Insert Specific Dates for Week 2 Here - e.g., November 4 - November 8]

| Day | Date | Platform | Content Type | Headline / Caption | Body Text | Call to Action | Visual/Media Idea | Hashtags |

| :-- | :-- | :--------- | :----------- | :----------------- | :-------- | :------------- | :---------------- | :-------- |

| Monday | [Date] | LinkedIn | Case Study / Success Story | Case Study: How [Client Name] Achieved [Key Result] with QuantumLeap AI. | Dive into a real-world example of how QuantumLeap AI transformed [Client Name]'s data strategy, leading to [Specific Metrics/Benefits]. This isn't just theory; it's proven impact. | Download the Full Case Study Here: [Link to Case Study PDF] | Professional graphic featuring client logo (with permission) and key success metrics. | \#CaseStudy \#ClientSuccess \#DataTransformation \#AIImpact \#QuantumLeapAI |

| | | X/Twitter | Testimonial Quote | "QuantumLeap AI is a game-changer for our strategic planning." - [Client Name/Title] | See why top businesses trust us for their data needs. | Read more testimonials: [Link to Testimonials Page] | Quote card with client photo (if available) or a sleek design. | \#Testimonial \#BusinessGrowth \#DataInsights \#QuantumLeapAI |

| | | Instagram | Carousel Post (Success Metrics) | [Client Name]'s Journey to Data Mastery with QuantumLeap AI! | Swipe to see the incredible results achieved: [Metric 1], [Metric 2], [Metric 3]. | Ready for your own success story? Link in bio! [Link in Bio] | Carousel: 1. Client logo + "Success Story". 2. "Challenge". 3. "Solution


3. Suggested Image Variations & Complementary Prompts

To ensure a diverse yet cohesive visual campaign, consider generating additional images based on the core aesthetic established above. These variations can serve different purposes within your social media strategy.

3.1. Lifestyle Integration Shot

  • Purpose: Show the product in use or as part of an everyday, aspirational scene.
  • Prompt Addition: "A subtly blurred human hand (diverse ethnicity, elegant, manicured) gently reaching towards or interacting with the AuraFlow device. The hand should be natural, not overly posed. Emphasize the seamless interaction and the device's intuitive nature. Maintain the same modern, minimalist setting, lighting, and color palette. Focus on the connection between user and technology."
  • Negative Prompts Addition: Distracting faces, overly prominent person, unnatural poses.

3.2. Detail/Feature Focus Shot

  • Purpose: Highlight specific design elements or unique features of the product.
  • Prompt Addition: "A close-up, macro shot of the AuraFlow device, focusing on the seamless matte finish and the subtle 'AuraTech blue' LED light band. Show the texture and premium material quality. The background should be a soft, out-of-focus blur of the minimalist environment. Emphasize craftsmanship and precision engineering."
  • Negative Prompts Addition: Wide shot, full product view, busy background.

3.3. Abstract/Conceptual Shot

  • Purpose: Create an artistic, brand-building image that evokes the product's essence without showing the product explicitly.
  • Prompt Addition: "An abstract, minimalist composition featuring soft, diffused gradients of 'AuraTech blue' merging with pristine whites and light grays. Imagine a subtle, ethereal light source emanating from the center, creating gentle, flowing light and shadow patterns. The image should evoke a sense of calm, innovation, and digital presence, without any specific objects. Smooth, fluid transitions."
  • Negative Prompts Addition: Objects, devices, people, sharp lines, cluttered.

4. Usage Guidelines for Generated Images

  • Review and Select: Carefully review all generated images. Select the ones that best align with your brand's message and visual standards.
  • Minor Edits: Generated images may require minor post-processing (e.g., cropping for specific platform aspect ratios, slight color correction, or contrast adjustments) to perfectly match your brand guidelines.
  • Consistency: Ensure a consistent look and feel across all chosen images to reinforce brand identity.
  • A/B Testing: Consider A/B testing different image variations in your social media ads to determine which visuals resonate most effectively with your target audience.
  • Accessibility: If adding text overlays, ensure sufficient contrast for readability.

5. Next Steps

Upon generation of these images, the next steps in your social media campaign workflow will involve:

  1. Content Calendar Integration: Placing the selected images into your social media content calendar.
  2. Copywriting: Developing compelling captions and accompanying text for each post.
  3. Hashtag Strategy: Researching and implementing relevant hashtags.
  4. Platform Optimization: Tailoring content for specific social media platforms (e.g., Instagram Stories, LinkedIn posts, X tweets).
  5. Scheduling & Publishing: Utilizing social media management tools to schedule and publish your campaign content.
  6. Performance Monitoring: Tracking metrics (engagement, reach, conversions) to evaluate campaign effectiveness.
social_media_campaign.txt
Download source file
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);}});}