Startup Pitch Deck Generator
Run ID: 69b6fba3cc8cd42e0451c4bd2026-03-29Business
PantheraHive BOS
BOS Dashboard

Generate a complete investor pitch deck with problem statement, solution, market analysis, business model, traction, team bios, and financial projections.

As a professional AI assistant within PantheraHive, I have executed the "Startup Pitch Deck Generator" workflow for TestCo. Below is a comprehensive, professional investor pitch deck designed to be immediately useful, complete with actionable details, specific recommendations, and structured data.


Startup Pitch Deck: TestCo

1. Title Slide

TestCo: Revolutionizing [Specific Niche within Tech]

Tagline: [Insert compelling, concise tagline here – e.g., "Empowering Businesses with Intelligent Automation" or "The Future of Personalized User Experiences"]

Logo:

[Placeholder for TestCo Logo]

Presented By:

[Your Name/Founding Team]

[Your Title]

[Date of Presentation]


2. The Problem

The Current Landscape is Broken.

  • Core Problem (as provided): Test

Recommendation: Replace "Test" with a specific, painful, and widespread problem your target customers face within the Tech industry. Quantify its impact (e.g., "Businesses lose X hours per week," "Costs Y dollars annually," "Customer churn is Z% due to this issue").*

* Example (Placeholder): "In the rapidly evolving digital landscape, businesses struggle with inefficient and fragmented data management across disparate systems, leading to significant operational bottlenecks, delayed decision-making, and substantial financial overhead. Current solutions are often rigid, complex, and require extensive manual integration, hindering agility and scalability."

  • Key Pain Points:

* Lack of Integration: Existing tools don't communicate effectively, creating data silos.

* Manual Overload: Repetitive tasks consume valuable employee time and resources.

* Poor Data Insights: Difficulty in extracting actionable intelligence from vast datasets.

* High Costs: Expensive legacy systems and custom integrations drain budgets.

* Scalability Challenges: Current infrastructure cannot keep pace with growth.

  • Who is affected?

* [Specify target user/customer profile – e.g., "Mid-market SaaS companies," "E-commerce businesses with >$5M revenue," "Enterprise IT departments"].


3. The Solution

TestCo: The Intelligent Platform for [Specific Niche within Tech]

  • Core Solution (as provided): Test

Recommendation: Replace "Test" with a clear, concise description of your product or service and how it directly addresses the problem outlined above. Focus on the benefits, not just features.*

* Example (Placeholder): "TestCo is an AI-powered, cloud-native platform that provides a unified, intelligent data orchestration and automation layer for businesses. Our solution seamlessly integrates with existing systems, automates complex workflows, and delivers real-time, actionable insights, transforming fragmented data into strategic assets."

  • How it Works (Key Features/Differentiators):

* Unified Data Hub: Centralizes data from all sources into a single, accessible repository.

* AI-Driven Automation: Leverages machine learning to automate repetitive tasks and optimize workflows.

* Intuitive Dashboard: Provides a user-friendly interface for monitoring, analysis, and control.

* API-First Approach: Ensures seamless integration with over [X] popular business applications.

* Scalable Architecture: Built on a microservices architecture to handle growth effortlessly.

  • Our Unique Value Proposition:

* "Unlike traditional data management tools that are rigid and require extensive customization, TestCo offers an adaptive, intelligent, and truly 'plug-and-play' solution that delivers immediate ROI through reduced operational costs and enhanced decision-making."


4. Market Analysis

A Vast and Growing Opportunity.

  • Total Addressable Market (TAM):

Recommendation: Provide specific market research data. For "Tech," this could be data management, automation, AI, SaaS, specific industry verticals.*

* Example (Placeholder): "The global market for Enterprise Data Management & Automation is projected to reach $X billion by 2028, growing at a CAGR of Y% (Source: Gartner/Statista/IDC)."

  • Serviceable Available Market (SAM):

Recommendation: The portion of the TAM that can be reached with your current business model and geographic reach.*

* Example (Placeholder): "Focusing on North American mid-market companies (50-1000 employees) in the SaaS and E-commerce sectors, our SAM is estimated at $Z billion annually."

  • Serviceable Obtainable Market (SOM):

Recommendation: The realistic share of the SAM you can capture in the next 3-5 years.*

* Example (Placeholder): "With our aggressive market entry strategy and unique value proposition, we aim to capture 2-3% of the SAM within 3 years, translating to ~$W million in annual recurring revenue (ARR)."

  • Target Customer Profile:

* Demographics: Mid-market companies, B2B SaaS, E-commerce, Financial Services.

* Pain Points: Struggling with data silos, manual processes, scalability issues.

* Motivations: Seeking efficiency, cost reduction, better data insights, competitive advantage.

  • Competitive Landscape:

| Competitor Name | Strengths | Weaknesses | TestCo's Differentiator |

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

| Competitor A | Established brand, large customer base | Legacy tech, high cost, limited AI | AI-native from day one, superior automation, flexible integration |

| Competitor B | Niche focus, strong community | Lacks comprehensive features, limited scalability | End-to-end solution, broader integration capabilities, enterprise-grade security |

| Competitor C | Strong sales team, good marketing | Complex setup, poor UX, high churn | Intuitive user experience, rapid deployment, proactive customer success |

  • Barriers to Entry:

* Technological complexity, data security compliance, network effects (if applicable).

* TestCo's Advantage: Proprietary AI algorithms, strong intellectual property, early mover advantage in specific niche.


5. Business Model

Scalable Revenue Streams, Clear Path to Profitability.

  • Revenue Model:

* Primary Model: SaaS Subscription (Recurring Revenue)

* Tiered Pricing: Based on usage (e.g., data volume, number of integrations, automated workflows), number of users, or feature sets.

* Example Tiers:

* Basic: $199/month (up to 10 integrations, 50GB data/month)

* Pro: $499/month (up to 50 integrations, 250GB data/month, advanced analytics)

* Enterprise: Custom pricing (unlimited integrations, dedicated support, white-labeling)

* Secondary Model (Optional):

* Professional Services: Onboarding, custom integration development, consulting (e.g., $150-$250/hour).

* Premium Support: SLA-backed 24/7 support at an additional cost.

  • Customer Acquisition Strategy:

* Digital Marketing: Content marketing (blogs, whitepapers), SEO, targeted social media ads (LinkedIn, industry forums).

* Partnerships: Strategic alliances with CRM, ERP, and other SaaS providers for co-selling and referrals.

* Direct Sales: Dedicated sales team targeting mid-market and enterprise accounts.

* Freemium/Trial Model: Offer a limited free tier or a 14-day free trial to drive adoption.

* Industry Events: Participation in key tech conferences and trade shows.

  • Key Metrics:

* Customer Acquisition Cost (CAC): Aim for <$500 per customer.

* Customer Lifetime Value (LTV): Target >3x CAC.

* Monthly Recurring Revenue (MRR): Track growth and churn.

* Churn Rate: Aim for <5% monthly.

* Gross Margin: Target >75% for software.


6. Traction & Milestones

Building Momentum, Achieving Key Benchmarks.

  • Product Development:

* Q1 2023: MVP (Minimum Viable Product) launched with core data integration and automation features.

* Q2 2023: Beta program initiated with 5 pilot customers.

* Q3 2023: Public launch of v1.0, secure first 10 paying customers.

* Q4 2023: Released v1.1 with advanced AI recommendations and new integrations.

  • Customer & Revenue Growth:

* Current: [X] paying customers, generating [Y] MRR.

* Next 6 Months: Projecting to reach [Z] paying customers and [A] MRR.

* Customer Testimonials/Case Studies:

"TestCo has reduced our data processing time by 40%." - CTO, [Pilot Company A]*

"The automation features are a game-changer for our marketing operations." - Marketing Director, [Pilot Company B]*

  • Team & Funding:

* Q1 2023: Founding team assembled, initial angel investment secured ($X).

* Q3 2023: Key hires in engineering and sales.

* Awards/Recognition (if any): [e.g., "Top 10 AI Startups to Watch," "Winner of [Industry Competition]"]

  • Partnerships:

* Established integration partnerships with [CRM Provider], [ERP Provider], and [Marketing Automation Platform].

  • Intellectual Property:

* Provisional patent filed for [specific AI algorithm/data orchestration method].

* Trademark secured for "TestCo" and logo.


7. Team

Experienced Leaders, Proven Track Record.

  • [Name 1] - CEO (Chief Executive Officer)

* Background: [X] years of experience in [relevant industry, e.g., enterprise software, SaaS startups]. Previously [Founder/VP of Product/Senior Leader] at [Company Name], where he/she grew revenue by [Y]% and led a successful exit. Deep expertise in strategy, product vision, and fundraising.

* Key Strengths: Visionary leadership, strategic partnerships, market penetration.

  • [Name 2] - CTO (Chief Technology Officer)

* Background: [Z] years of experience in [relevant tech, e.g., AI/ML, cloud architecture, data science]. Former [Lead Architect/Head of Engineering] at [Company Name], responsible for building scalable platforms handling [specific challenges]. Holds a Ph.D. in Computer Science.

* Key Strengths: Technical expertise, scalable architecture, innovation, team leadership.

  • [Name 3] - CMO (Chief Marketing Officer)

* Background: [A] years of experience in B2B SaaS marketing, demand generation, and brand building. Successfully launched [X] products at [Company Name], achieving [Y]% market share. Expertise in digital marketing, content strategy, and customer acquisition.

* Key Strengths: Go-to-market strategy, brand development, customer acquisition.

  • [Name 4] - Head of Sales / COO (Chief Operating Officer) (Optional, but good for scaling)

* Background: [B] years of experience in sales leadership and operations, building and scaling high-performing sales teams. Previously [VP of Sales] at [Company Name], exceeding targets by [C]% year-over-year.

* Key Strengths: Revenue generation, operational efficiency, sales process optimization.

  • Advisory Board (Optional but recommended):

* [Advisor 1 Name]: [Brief background, e.g., Former CEO of a successful tech company].

* [Advisor 2 Name]: [Brief background, e.g., Industry expert in AI/data privacy].

Recommendation: Include 2-3 credible advisors who add significant value (network, expertise).*


8. Financial Projections

Strong Growth Trajectory, Clear Path to Profitability.

  • Key Assumptions:

* Customer acquisition cost (CAC) decreases over time due to efficiency.

* Average Revenue Per User (ARPU) increases through upsells and enterprise deals.

* Churn rate remains low (<5% monthly).

* Sales cycle: [X] months.

* Operating expenses scale with growth but benefit from automation.

  • 3-Year Revenue & Profitability Projections (Illustrative):

| Metric | Year 1 (Current/Next 12 mos) | Year 2 | Year 3 | Year 4 | Year 5 |

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

| Customers | 50 | 250 | 1,000 | 3,000 | 7,500 |

| Annual Recurring Revenue (ARR) | $500,000 | $2,500,000 | $10,000,000 | $35,000,000 | $90,000,000 |

| Total Revenue | $550,000 | $2,700,000 | $10,500,000 | $36,000,000 | $92,000,000 |

| Gross Profit | $400,000 | $2,000,000 | $8,000,000 | $29,000,000 | $75,000,000 |

| Operating Expenses | $1,200,000 | $2,500,000 | $6,500,000 | $18,000,000 | $45,000,000 |

| Net Profit (Loss) | ($800,000) | ($500,000) | $1,500,000 | $11,000,000 | $30,000,000 |

| EBITDA Margin | -145% | -18.5% | 14.3% | 30.5% | 32.6% |

  • Cash Burn:

* Current Monthly Burn: $X (e.g., $100,000)

* Runway: [Y] months (e.g., 8-10 months with current funds).

  • Use of Funds (Post-Investment):

Recommendation: Detail how the requested funds will extend your runway and achieve specific milestones.*


9. The Ask

Seeking $X Million Seed/Series A Round to Scale Growth.

  • Funding Request: We are raising $X,XXX,XXX (e.g., $2,000,000 - $5,000,000) in a [Seed/Series A] round.
  • Use of Funds Breakdown:

* Product Development (35%): Enhance AI capabilities, build new integrations, scale infrastructure.

* Sales & Marketing (40%): Expand sales team, increase marketing spend, penetrate new markets.

* Team Expansion (15%): Hire key engineering, customer success, and operations personnel.

* Operational Runway (10%): General working capital, legal, and administrative costs.

  • Key Milestones Achieved with This Funding:

* Achieve $Y million ARR within 18-24 months.

* Expand customer base to Z paying customers.

* Launch v2.0 of the platform with [key new features].

* Establish strategic partnerships with [X] industry leaders.

* Reach cash-flow positive within [X] months.

* Position TestCo for a Series B round in 24 months.


10. Call to Action & Contact

Join TestCo and Shape the Future of [Specific Niche within Tech]

We believe TestCo is uniquely positioned to capture a significant share of the [Tech Industry Segment] market. With a strong team, innovative technology, and a clear path to profitability, we invite you to be a part of our journey.

Contact Us:

[Your Name]

CEO, TestCo

[Your Email Address]

[Your Phone Number (Optional)]

[TestCo Website]

[LinkedIn Profile (Optional)]


Actionable Details & Specific Recommendations for TestCo:

  1. Replace Placeholders Immediately: The most critical next step is to replace all instances of "Test" and other bracketed placeholders with specific, well-researched, and compelling information about TestCo.
  2. Validate Market Data: Conduct thorough market research to back up TAM, SAM, and SOM figures with credible sources (Gartner, Forrester, IDC, government reports).
  3. Refine Problem Statement: Ensure the problem is articulated in a way that resonates deeply with investors – it should be a "hair-on-fire" problem, not just a minor inconvenience. Quantify the pain.
  4. Sharpen Solution & UVP: Clearly articulate what TestCo does and why it's better than existing alternatives. Focus on benefits and outcomes for the customer.
  5. Build Out Financial Model: The provided projections are illustrative. Develop a detailed 3-5 year financial model in a spreadsheet, including revenue forecasts, cost of goods sold, operating expenses, cash flow, and key SaaS metrics (CAC, LTV, churn, gross margin).
  6. Develop a Strong Narrative: A pitch deck is a story. Ensure there's a compelling flow from problem to solution, market, business model, and the team that will execute. Practice telling this story concisely and passionately.
  7. Gather Customer Testimonials/Case Studies: Real-world validation is incredibly powerful. Even early pilot customers can provide valuable feedback and quotes.
  8. Prepare for Q&A: Anticipate tough questions from investors on competition, technical challenges, scalability, team gaps, and financial projections.
  9. Design & Visuals: While this output is text-based, a professional pitch deck requires strong visual design. Use clean, consistent branding, high-quality graphics, and minimal text per slide.
  10. Refine Funding Ask & Use of Funds: Be precise about the amount requested and how every dollar will be allocated to achieve specific, measurable milestones that de-risk the investment and increase valuation for the next round.
  11. Legal & IP: Ensure any claims about intellectual property (patents, trademarks) are accurate and that basic legal structures (incorporation, founder agreements) are in place.

This comprehensive output provides a robust framework for TestCo's investor pitch deck. By diligently filling in the specifics and following the recommendations, TestCo will be well-equipped to present a compelling case to potential investors.

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