Image Prompt & Brief Creator
Run ID: 69cba96f61b1021a29a8b1972026-03-31Design
PantheraHive BOS
BOS Dashboard

Generate 10 professional AI image prompts, creative briefs, and visual direction specs

As per your request, here are 10 professional AI image prompts, comprehensive creative briefs, and detailed visual direction specifications. Each output is designed to be highly actionable and ready for use in advanced AI image generation platforms.


1. Concept: Futuristic Urban Oasis

Image Prompt

"A sprawling, hyper-realistic panoramic shot of a sustainable, futuristic metropolis at dawn. Towering skyscrapers with integrated vertical farms and bioluminescent architectural elements glow softly. Advanced autonomous vehicles glide silently on multi-level sky-bridges. Lush, vibrant green spaces and elevated parks intersperse the urban fabric. The sky is a gradient of soft purples, pinks, and oranges, reflecting off glass surfaces. Focus on clean lines, biophilic design, and a sense of serene technological progress. Ultra-wide angle, cinematic quality, volumetric lighting, 8K, photorealistic, Unreal Engine 5."

Creative Brief

  • Objective: To visualize a harmonious blend of advanced technology and natural ecosystems, promoting a positive vision of future urban living.
  • Target Audience: Urban planners, environmentalists, technology enthusiasts, real estate developers, and the general public interested in sustainable innovation.
  • Key Message: The future of cities is green, smart, and beautiful – where technology serves nature and humanity.
  • Desired Emotion: Hope, inspiration, tranquility, awe, and a sense of possibility.

Visual Direction Specs

  • Composition: Rule of thirds, leading lines from sky-bridges, depth of field highlighting both foreground and distant structures.
  • Color Palette: Predominantly cool blues, greens, and silvers, accented by warm sunrise tones and bioluminescent purples/aquas.
  • Lighting: Soft, diffuse volumetric light from the rising sun, creating long shadows and highlighting architectural details. Internal glowing lights from buildings.
  • Details: Intricate patterns on building facades, visible drones or flying vehicles in the distance, water features integrated into parks, subtle mist or fog in lower areas.
  • Style Nuances: Avoid dystopian or overly sterile aesthetics. Emphasize organic shapes and materials where possible within the futuristic context.

2. Concept: Serene Mindful Retreat

Image Prompt

"A breathtaking, high-definition shot of a minimalist, modern meditation pavilion nestled on a cliff overlooking a vast, calm ocean at sunset. The pavilion is constructed from natural, light-colored wood and glass, featuring clean, simple lines. A single figure, silhouetted, sits in a meditative pose inside, facing the ocean. The sky is ablaze with warm oranges, deep purples, and soft blues, reflecting on the glassy surface of the water. Gentle waves lap against the rocks below. The atmosphere is one of profound peace and introspection. Golden hour lighting, wide shot, cinematic, tranquil, high dynamic range, photorealistic."

Creative Brief

  • Objective: To evoke a powerful sense of peace, mindfulness, and escape, promoting mental well-being and introspection.
  • Target Audience: Wellness brands, meditation apps, luxury travel agencies, individuals seeking tranquility and self-care.
  • Key Message: Find your inner peace in the embrace of nature and thoughtful design.
  • Desired Emotion: Calm, serenity, introspection, inspiration, relaxation.

Visual Direction Specs

  • Composition: Emphasize the vastness of the ocean against the small, intimate pavilion. Use leading lines from the cliff edge.
  • Color Palette: Predominantly warm sunset hues (orange, gold, magenta) contrasting with deep ocean blues and the natural wood tones.
  • Lighting: Dramatic golden hour lighting, long shadows, rim lighting on the figure, soft glow from the sunset.
  • Details: Smooth, polished wood textures, reflections on the glass walls, subtle ocean spray or mist, a single, delicate plant inside the pavilion.
  • Style Nuances: Minimalist aesthetic, avoid clutter. Focus on the interplay of light, shadow, and natural elements.

3. Concept: Dynamic Tech Startup Collaboration

Image Prompt

"A vibrant, candid medium shot of a diverse, energetic team of five young professionals collaborating in a modern, open-plan tech office space. One person is sketching on a large interactive whiteboard, another is passionately presenting ideas, while others are engaged in discussion, some looking at a laptop screen. The environment is bright, filled with natural light, and features exposed brick, modern art, and ergonomic furniture. Laptops, coffee cups, and whiteboards are visible. Dynamic poses, genuine smiles, and a sense of shared excitement are key. Professional photography style, shallow depth of field, natural lighting, high energy, crisp detail, realistic."

Creative Brief

  • Objective: To showcase a dynamic, collaborative, and innovative work environment, reflecting modern startup culture.
  • Target Audience: Potential employees, investors, clients, and partners for tech companies; recruitment agencies.
  • Key Message: Innovation thrives through collaboration, diversity, and passion in a supportive environment.
  • Desired Emotion: Enthusiasm, inspiration, collaboration, dynamism, progress, authenticity.

Visual Direction Specs

  • Composition: Group shot, but with individual expressions and actions clearly visible. Use diagonal lines to convey energy.
  • Color Palette: Bright and inviting, with pops of vibrant corporate colors (e.g., orange, teal) against a neutral background (white, light wood, grey).
  • Lighting: Abundant natural light from large windows, supplemented by soft, warm interior lighting. Avoid harsh shadows.
  • Details: Visible tech gadgets (laptops, tablets), whiteboards with legible (but not distracting) diagrams, branded water bottles or coffee cups, diverse team members (ethnicity, gender).
  • Style Nuances: Authenticity over staged perfection. Focus on capturing genuine interaction and a positive atmosphere.

4. Concept: Gourmet Culinary Masterpiece

Image Prompt

"An exquisite, top-down (flat lay) studio shot of a perfectly plated gourmet dessert: a deconstructed lemon meringue tart. The composition features a delicate quenelle of lemon curd, shards of crisp meringue, crumbled shortbread, fresh edible flowers (e.g., viola, pansy), and a vibrant swirl of raspberry coulis on a slate grey ceramic plate. The background is a subtly textured dark wood table, with artfully placed silver cutlery and a linen napkin partially visible. Soft, diffused overhead lighting, extremely sharp focus on the dessert, shallow depth of field for background elements, food photography, high resolution, Michelin star aesthetic."

Creative Brief

  • Objective: To elevate food photography to an art form, showcasing the elegance, precision, and deliciousness of high-end cuisine.
  • Target Audience: Fine dining restaurants, culinary magazines, gourmet food bloggers, luxury food brands, professional chefs.
  • Key Message: Culinary artistry and exquisite taste presented with unparalleled elegance.
  • Desired Emotion: Desire, delight, sophistication, appreciation for craftsmanship.

Visual Direction Specs

  • Composition: Deliberate and balanced, using the rule of odds for elements. Negative space around the plate.
  • Color Palette: Bright, natural colors of the food (yellow, white, red, green) against a dark, muted background (grey, dark wood).
  • Lighting: Softbox lighting from directly above or slightly offset, minimizing harsh shadows and highlighting textures.
  • Details: Micro-details of the meringue's texture, glistening coulis, pristine plate edge, subtle reflections on cutlery.
  • Style Nuances: Clean, minimalist, and highly aesthetic. Avoid any distracting elements. Focus on texture and vibrant color contrast.

5. Concept: Abstract AI Data Flow

Image Prompt

"A mesmerizing, abstract representation of complex AI data processing. Swirling, interconnected streams of luminous data particles in various shades of electric blue, vibrant purple, and neon green flow through a dark, ethereal 3D space. Geometric structures, resembling neural network nodes or circuit boards, faintly glow within the data streams, acting as focal points. The overall effect is dynamic yet controlled, suggesting intelligence and information exchange. Depth of field emphasizes certain data clusters. High contrast, volumetric glow, digital art, futuristic, 4K, rendered in Octane Render."

Creative Brief

  • Objective: To visually represent the complex, intelligent, and interconnected nature of artificial intelligence and data processing in an artistic and engaging way.
  • Target Audience: Technology companies, data scientists, AI researchers, cybersecurity firms, educational institutions.
  • Key Message: Unveiling the intricate beauty and power of intelligent systems and data.
  • Desired Emotion: Curiosity, intelligence, wonder, sophistication, innovation.

Visual Direction Specs

  • Composition: Dynamic flow, with a central focal point or an implied trajectory. Use negative space to enhance the glow.
  • Color Palette: Predominantly cool tones (blues, purples, greens) with high saturation and luminosity. Subtle gradients within the streams.
  • Lighting: Internal glow from the data particles and nodes. Dark background to maximize contrast.
  • Details: Subtle variations in particle size and density, faint algorithmic patterns within the streams, a sense of movement and energy.
  • Style Nuances: Avoid literal representations of hardware. Focus on abstract beauty and the conceptual flow of information.

6. Concept: Vintage Sci-Fi Travel Poster

Image Prompt

"A retro-futuristic travel poster for 'Mars Colonization Tours.' The central image depicts a sleek, chrome-plated rocket launching from a vibrant, stylized Martian landscape featuring towering red rock formations, a faint atmospheric haze, and a distant, domed human settlement. Two stylized astronauts in bubble helmets wave from the foreground. Bold, sans-serif typography announces 'Visit Mars!' and 'Your Adventure Awaits!'. The aesthetic is inspired by 1950s pulp sci-fi art and mid-century modern design. Rich primary colors, clean lines, halftone patterns, distressed paper texture overlay, 16K, digital painting, retrofuturism."

Creative Brief

  • Objective: To create an engaging and nostalgic visual that blends classic sci-fi aesthetics with a sense of future exploration and adventure.
  • Target Audience: Sci-fi enthusiasts, retro design lovers, space exploration advocates, marketing campaigns for futuristic concepts.
  • Key Message: Experience the thrill of interstellar travel and new frontiers with a timeless sense of wonder.
  • Desired Emotion: Excitement, nostalgia, adventure, wonder, optimism.

Visual Direction Specs

  • Composition: Strong central subject (rocket), balanced by landscape and text. Classic poster layout.
  • Color Palette: Saturated reds, oranges, and browns for Mars, contrasted with metallic silver/chrome and deep space blues/blacks. Yellows for text.
  • Lighting: Exaggerated, dramatic lighting to emphasize forms, similar to old movie posters. Clear light source.
  • Details: Visible rivets on the rocket, stylized human figures, subtle details on the domed settlement, classic sci-fi typography.
  • Style Nuances: Embrace the kitsch and optimism of 1950s sci-fi. Flat colors with minimal gradients, strong outlines.

7. Concept: Minimalist Luxury Product Showcase

Image Prompt

"A pristine, ultra-minimalist studio shot of a high-end, sleek black wireless earbud case resting on a polished white marble pedestal. The background is a seamless, pure white void, creating an infinite feel. A single, soft spotlight illuminates the product from above, highlighting its smooth, matte texture and subtle metallic branding. Sharp focus on the product, with exquisite detail on the curves and reflections. The overall impression is one of elegance, sophistication, and purity. Product photography, clean, precise, high key, 8K, photorealistic, Canon 5D Mark IV lens."

Creative Brief

  • Objective: To showcase a luxury tech product with an emphasis on its design, quality, and premium status through minimalist aesthetics.
  • Target Audience: High-net-worth consumers, tech enthusiasts interested in premium brands, luxury lifestyle publications.
  • Key Message: Uncompromised design meets superior quality.
  • Desired Emotion: Aspiration, sophistication, desire, elegance.

Visual Direction Specs

  • Composition: Centered or slightly off-center product, ample negative space.
  • Color Palette: Monochromatic (black product, white background, grey shadows) with subtle metallic accents.
  • Lighting: Extremely controlled softbox lighting to create subtle gradients and highlight contours without harsh shadows. One key light source.
  • Details: Flawless surface of the product, crisp edges, subtle texture of the marble, perfect reflections.
  • Style Nuances: Absolutely no clutter. Focus on the product's form and material. High-key lighting for a clean, ethereal feel.

8. Concept: Enchanted Forest Guardian

Image Prompt

"A majestic and benevolent forest guardian creature, a large moss-covered humanoid figure with glowing fungal growths and eyes like ancient embers, standing amidst a dense, ancient bioluminescent forest at twilight. Intricate roots and vines intertwine around its body, forming natural armor. Soft, ethereal light emanates from glowing flora and fauna in the background, casting dappled shadows. A sense of deep wisdom and connection to nature. Full body shot, fantasy art, highly detailed, magical realism, volumetric fog, deep greens and blues, rendered in ZBrush and Photoshop, 16K."

Creative Brief

  • Objective: To create a mystical and awe-inspiring fantasy creature that embodies the spirit and protection of an ancient forest.
  • Target Audience: Fantasy game developers, book cover artists, concept artists, fans of mythical creatures and nature-inspired fantasy.
  • Key Message: The ancient forests hold powerful secrets and guardians.
  • Desired Emotion: Wonder, awe, mystery, respect, enchantment.

Visual Direction Specs

  • Composition: The guardian as the central, dominant figure, framed by the dense forest canopy.
  • Color Palette: Predominantly deep greens, blues, and earthy browns, accented by glowing yellows, purples, and aquas from bioluminescence.
  • Lighting: Ethereal, magical lighting from within the forest. Soft, diffused light with pockets of brighter glow.
  • Details: Extremely intricate textures on moss, bark, glowing fungi. Expressive, ancient-looking eyes. Subtle movement in the vines.
  • Style Nuances: Avoid overly aggressive or monstrous depiction. Emphasize wisdom and guardianship.

9. Concept: Vibrant Urban Street Art Mural

Image Prompt

"A massive, vibrant, and intricate street art mural covering the entire side of an old brick building in a gritty urban setting. The mural depicts a fusion of cultural motifs: a stylized phoenix rising from abstract geometric patterns, surrounded by elements of graffiti lettering and traditional folk art patterns. Bold, clashing colors (e.g., electric blue, fiery orange, neon pink, deep purple) dominate. The style is raw, energetic, and expressive. Sunlight catches parts of the mural, highlighting its texture. A few subtle cracks in the brick wall are visible, adding to the authenticity. Wide shot, urban photography, dynamic, high contrast, 8K, photorealistic with artistic flair."

Creative Brief

  • Objective: To celebrate urban culture, artistic expression, and the transformative power of street art in revitalizing city spaces.
  • Target Audience: Art enthusiasts, urban culture magazines, tourism boards, youth-oriented brands.
  • Key Message: Art transforms the urban landscape, reflecting the vibrant spirit of the community.
  • Desired Emotion: Energy, inspiration, cultural pride, rebellion, creativity.

Visual Direction Specs

  • Composition: The mural should dominate the frame, with just enough of the surrounding urban environment to provide context.
  • Color Palette: Extremely vibrant and diverse, with high saturation. Contrasting warm and cool tones.
  • Lighting: Direct sunlight hitting the mural from an angle, creating strong highlights and shadows that reveal the texture.
  • Details: Visible brushstrokes or spray paint textures, subtle weathering on the wall, intricate patterns within the mural.
  • Style Nuances: Authenticity of street art, avoid overly polished look. Elements of grunge and raw urban aesthetic.

10. Concept: Scientific Breakthrough in Lab

Image Prompt

"A dramatic, focused shot inside a sterile, high-tech laboratory where a team of three diverse scientists (two female, one male) are intently observing a holographic projection of a complex molecular structure, glowing with internal light. One scientist points with a laser pointer. The lab is clean, filled with advanced equipment, glowing screens displaying data, and precise instruments. Blue and white dominant color scheme, with a focal point of green/gold from the holographic projection. Intense concentration and a sense of discovery. Medium shot, professional photography, clean, sharp focus, volumetric light rays, 8K, photorealistic, inspired by scientific journal covers."

Creative Brief

  • Objective: To convey the excitement, precision, and collaborative
image_prompt___brief_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);}});}