Professional Resume Builder
Run ID: 69cd022c3e7fb09ff16a70f62026-04-01Career
PantheraHive BOS
BOS Dashboard

Professional Resume Builder - Step 1/2: Generate Tailored Resume (Information Gathering)

Workflow Description: Create a tailored resume for your target job.

Current Step: resume → generate_resume

To effectively generate a tailored, professional resume that maximizes your chances of securing your target role, specific information about your background, skills, and the desired job is crucial. This initial output outlines the comprehensive data required to craft a compelling resume and provides a structured template to illustrate the final deliverable.


1. Current Status & Required Information

To generate a truly tailored resume, we need your specific professional details and the target job's requirements. Currently, we lack this specific input. Please provide the following information to proceed with generating your personalized resume:

Essential Information Needed:

  1. Target Job Description (Crucial):

* Full Job Title: (e.g., "Senior Product Manager," "Marketing Specialist," "Software Engineer")

* Company Name: (Optional, but helpful for context)

Link to Job Posting or Full Job Description: This is the most important piece of information*. It allows us to analyze keywords, required skills, and responsibilities to tailor your resume precisely.

  1. Contact Information:

* Full Name:

* Phone Number:

* Email Address:

* LinkedIn Profile URL: (Highly recommended)

* Portfolio/Personal Website URL: (If applicable, e.g., for designers, developers, writers)

* City, State: (Full address is often not needed for privacy and space, but city/state is good)

  1. Professional Summary or Objective:

* A brief (2-4 sentence) overview of your career goals, key qualifications, and what you bring to a role. If you have one, provide it. Otherwise, we can draft one based on your experience and the target job.

  1. Work Experience:

* For EACH position (most recent first):

* Job Title:

* Company Name:

* City, State (of company):

* Employment Dates (Month/Year - Month/Year):

* Key Responsibilities & Achievements: Provide 3-5 bullet points for each role, focusing on quantifiable results and impact. Use strong action verbs. (e.g., "Managed a team of 5 engineers, increasing project delivery efficiency by 20%," "Developed and executed marketing campaigns that boosted lead generation by 15%").

  1. Education:

* For EACH degree/certification (most recent first):

* Degree/Program Name: (e.g., "Master of Business Administration," "B.S. in Computer Science," "Project Management Professional (PMP) Certification")

* Major/Field of Study:

* University/Institution Name:

* City, State (of institution):

* Graduation Date (Month/Year or Expected Date):

* Relevant Coursework, Honors, GPA (Optional):

  1. Skills:

* Technical Skills: (e.g., Programming Languages, Software, Tools, Platforms)

* Soft Skills: (e.g., Leadership, Communication, Problem-Solving, Teamwork, Project Management)

* Languages: (e.g., English - Native, Spanish - Fluent)

  1. Awards, Certifications, Publications, Projects (Optional but Recommended):

* Any significant achievements, relevant certifications, published works, or personal projects that showcase your abilities.


2. Illustrative Professional Resume Structure (Template with Placeholders)

Once the above information is provided, your tailored resume will follow a professional, ATS-friendly structure similar to this example. This template demonstrates the typical sections and types of content you can expect.

text • 3,104 chars
---
[YOUR FULL NAME]
[Your Phone Number] | [Your Email Address] | [Your LinkedIn Profile URL] | [Your Portfolio/Website URL (Optional)] | [Your City, State]

---

**PROFESSIONAL SUMMARY**
[2-4 sentences summarizing your key qualifications, career objectives, and what you bring to the target role. This will be tailored to the job description.]
*Example:* Highly accomplished [Your Profession] with [X years] of experience in [Key Industry/Area]. Proven ability to [Key Skill 1] and [Key Skill 2], driving [Quantifiable Achievement]. Seeking to leverage expertise in [Relevant Area] to contribute to [Target Company/Industry]’s success.

---

**SKILLS**
*   **Technical Skills:** [Programming Language 1], [Software/Tool 1], [Platform 1], [Database 1], [OS 1], etc.
*   **Soft Skills:** [Leadership], [Strategic Planning], [Cross-functional Collaboration], [Problem-solving], [Client Relations], etc.
*   **Languages:** [Language 1 - Proficiency], [Language 2 - Proficiency]

---

**WORK EXPERIENCE**

**[Your Most Recent Job Title]** | [Company Name] | [City, State]
[Month Year] – [Month Year] (or Present)
*   [Action Verb] [Quantifiable Achievement/Responsibility 1], resulting in [Impact]. (e.g., "Led a team of 5 engineers in developing a new SaaS product, reducing time-to-market by 25% and increasing user acquisition by 15% in the first quarter.")
*   [Action Verb] [Quantifiable Achievement/Responsibility 2], achieving [Result]. (e.g., "Managed a budget of $500K for marketing campaigns, consistently exceeding ROI targets by an average of 10%.")
*   [Action Verb] [Key Responsibility 3], demonstrating [Skill]. (e.g., "Streamlined project workflows using Agile methodologies, improving team efficiency by 20%.")
*   [Action Verb] [Key Responsibility 4], collaborating with [Stakeholders].

**[Your Previous Job Title]** | [Company Name] | [City, State]
[Month Year] – [Month Year]
*   [Action Verb] [Quantifiable Achievement/Responsibility 1], resulting in [Impact].
*   [Action Verb] [Quantifiable Achievement/Responsibility 2], achieving [Result].
*   [Action Verb] [Key Responsibility 3], demonstrating [Skill].

---

**EDUCATION**

**[Degree Name]** (e.g., Master of Business Administration) | [University Name] | [City, State]
[Month Year] – [Month Year] (or Graduation Date)
*   *Optional:* Relevant Coursework: [Course 1], [Course 2]
*   *Optional:* GPA: [X.X/4.0] (if >3.5)
*   *Optional:* Honors: [Dean's List], [Awards]

**[Degree Name]** (e.g., B.S. in Computer Science) | [University Name] | [City, State]
[Month Year] – [Month Year] (or Graduation Date)
*   *Optional:* Relevant Coursework: [Course 1], [Course 2]

---

**CERTIFICATIONS & AWARDS (Optional)**
*   [Certification Name], [Issuing Body], [Year]
*   [Award Name], [Issuing Body], [Year]

**PROJECTS / PORTFOLIO (Optional - highly recommended for tech/creative roles)**
*   **[Project Name]** | [Link to Project]
    *   [Brief description of project, your role, and technologies/skills used.]
*   **[Project Name]** | [Link to Project]
    *   [Brief description of project, your role, and technologies/skills used.]
Sandboxed live preview

3. Why This Information is Crucial for Tailoring

  • ATS Optimization: Providing the target job description allows us to integrate crucial keywords that Applicant Tracking Systems (ATS) look for, ensuring your resume passes the initial screening.
  • Relevance: Tailoring ensures that your most relevant experience, skills, and achievements are highlighted, directly addressing the employer's needs.
  • Impactful Summary: A strong professional summary sets the tone, quickly communicating your value proposition in relation to the specific role.
  • Quantifiable Achievements: Focusing on results with numbers demonstrates your impact and value, making your experience more compelling.
  • Clarity and Conciseness: A well-structured resume is easy for recruiters to read and quickly grasp your qualifications.

4. Next Steps

Please provide the detailed information requested in Section 1: Essential Information Needed. Once received, we will proceed with generating your comprehensive, tailored professional resume as outlined in Section 2: Illustrative Professional Resume Structure.

We are ready to build a resume that effectively showcases your strengths and helps you stand out!

resume Output

As the second and final step in the "Professional Resume Builder" workflow, this output focuses on generating a compelling and tailored cover letter that complements your newly crafted resume. A well-written cover letter acts as your personal introduction, allowing you to elaborate on key qualifications and express your enthusiasm for the target role in a way a resume cannot.


Step 2 of 2: Generate a Tailored Professional Cover Letter

This section provides a comprehensive guide, template, and best practices for creating a powerful cover letter that significantly enhances your job application.

Understanding the Purpose of a Cover Letter

A cover letter is more than just an introduction; it's an opportunity to:

  • Introduce yourself and state your intent: Clearly indicate the position you're applying for.
  • Highlight key qualifications: Draw attention to specific skills and experiences from your resume that directly match the job description.
  • Demonstrate fit: Explain why you are a strong candidate for this specific role at this specific company.
  • Showcase personality and enthusiasm: Convey your passion and genuine interest in the opportunity.
  • Address specific requirements: Use it to explain any gaps, career changes, or unique circumstances if necessary.

Essential Components of a Professional Cover Letter

Every effective cover letter should include the following sections:

  1. Your Contact Information: Clearly visible at the top.
  2. Date: The date you are sending the letter.
  3. Hiring Manager/Company Contact Information: Addressed to a specific person if possible.
  4. Salutation: Professional and personalized.
  5. Opening Paragraph: State the position you're applying for and where you saw the advertisement. Briefly express your enthusiasm.
  6. Body Paragraphs (2-3):

* Paragraph 1 (Skills/Experience Match): Connect your most relevant skills and experiences to the job requirements. Use specific examples and quantify achievements where possible.

Paragraph 2 (Company Fit/Value Proposition): Explain why you want to work for this company* and how your values align with theirs. Demonstrate what unique value you can bring.

  1. Closing Paragraph: Reiterate your interest, express eagerness for an interview, and thank them for their time and consideration.
  2. Professional Closing: E.g., "Sincerely," "Regards,"
  3. Your Typed Name: Followed by your signature (if submitting a hard copy or digitally signed PDF).

Professional Cover Letter Template

Below is a detailed template. Remember to customize every bracketed [ ] section with your specific information for each application.


[Your Name]

[Your Address] • [Your Phone Number] • [Your Email Address] • [Your LinkedIn Profile URL (Optional)]

[Date]

[Hiring Manager Name (if known), or "Hiring Team"]

[Hiring Manager Title (if known)]

[Company Name]

[Company Address]

Subject: Application for [Job Title] - [Your Name]

Dear [Mr./Ms./Mx. Last Name of Hiring Manager, or "Hiring Team"],

I am writing to express my enthusiastic interest in the [Job Title] position at [Company Name], as advertised on [Platform where you saw the advertisement, e.g., LinkedIn, Company Website, Indeed]. With a proven track record in [mention 1-2 key areas relevant to the job] and a deep commitment to [mention a core value or skill], I am confident that my skills and experiences align perfectly with the requirements outlined in your job description.

During my [Number] years at [Previous Company Name/Relevant Experience], I successfully [quantifiable achievement or key responsibility 1, e.g., "managed projects leading to a 15% increase in efficiency"]. My expertise in [Specific Skill 1, e.g., "data analysis"] and [Specific Skill 2, e.g., "cross-functional team leadership"] directly translates to the demands of this role, particularly regarding [mention a specific duty or challenge from the job description]. For instance, I spearheaded [specific project or initiative] which resulted in [measurable outcome] and directly aligns with [specific requirement mentioned in the job ad].

What particularly draws me to [Company Name] is [mention something specific about the company, e.g., "its innovative approach to X," "its commitment to Y values," "its recent project Z"]. I am impressed by [mention a specific company achievement, project, or cultural aspect]. My collaborative work style and passion for [relevant industry trend or company mission] make me an ideal candidate to contribute positively to your team and help achieve [Company Name]'s objectives in [specific area].

Thank you for considering my application. My resume, which is attached for your review, provides further details on my qualifications. I am eager to discuss how my skills and experiences can benefit [Company Name] and am available for an interview at your earliest convenience.

Sincerely,

[Your Signature (if hard copy or digitally signed PDF)]

[Your Typed Name]


Tips for Customization and Impact

To make your cover letter truly stand out, follow these best practices:

  1. Research the Company Thoroughly: Understand their mission, values, recent projects, and company culture. Weave this knowledge into your "Why this company?" paragraph.
  2. Analyze the Job Description: Identify keywords, essential duties, and required skills. Mirror this language in your cover letter.
  3. Personalize the Salutation: Always try to find the hiring manager's name. A quick LinkedIn search or a call to the company's reception can often yield this information. If unavailable, "Dear Hiring Team" or "Dear [Department Name] Hiring Manager" are acceptable alternatives.
  4. Quantify Achievements: Whenever possible, use numbers and data to illustrate your impact (e.g., "increased sales by 20%", "managed a budget of $500K").
  5. Tell a Story (Briefly): Instead of just listing skills, provide mini-anecdotes that demonstrate how you applied those skills to achieve results.
  6. Focus on "Them," Not Just "You": While it's about your qualifications, frame them in terms of how they benefit the company. What problems can you solve for them?
  7. Proofread Meticulously: Typos and grammatical errors can be deal-breakers. Use grammar checkers and ask someone else to review it.
  8. Keep it Concise: Aim for one page, three to four paragraphs max. Busy hiring managers appreciate brevity.
  9. Match Formatting to Resume: Ensure your cover letter's font, spacing, and header style align with your resume for a cohesive professional package.
  10. Save as PDF: Always submit your cover letter as a PDF unless explicitly asked for another format, to preserve formatting.

Actionable Next Steps

  1. Review Your Resume: Before writing, re-familiarize yourself with your resume to ensure you're highlighting consistent and relevant information.
  2. Identify Target Job: Clearly define the specific job title and company you are applying to.
  3. Gather Information: Collect the hiring manager's name (if possible), company details, and the full job description.
  4. Draft Your Letter: Use the template above as a starting point, filling in all bracketed sections and customizing the content for the specific role.
  5. Refine and Edit: Carefully review for clarity, conciseness, grammar, and spelling. Ensure it directly addresses the job requirements and showcases your unique value proposition.
  6. Save and Submit: Convert your letter to PDF and submit it along with your tailored resume.

By following these guidelines, you will generate a highly professional and effective cover letter that significantly strengthens your application and increases your chances of securing an interview.

professional_resume_builder.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
"); 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' import ReactDOM from 'react-dom/client' import App from './App' import './index.css' ReactDOM.createRoot(document.getElementById('root')!).render( ) "); 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' import './App.css' function App(){ return(

"+slugTitle(pn)+"

Built with PantheraHive BOS

) } export default App "); zip.file(folder+"src/index.css","*{margin:0;padding:0;box-sizing:border-box} body{font-family:system-ui,-apple-system,sans-serif;background:#f0f2f5;color:#1a1a2e} .app{min-height:100vh;display:flex;flex-direction:column} .app-header{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px} h1{font-size:2.5rem;font-weight:700} "); 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)+" Generated by PantheraHive BOS. ## Setup ```bash npm install npm run dev ``` ## Build ```bash npm run build ``` ## Open in IDE Open the project folder in VS Code or WebStorm. "); zip.file(folder+".gitignore","node_modules/ dist/ .env .DS_Store *.local "); } /* --- 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",'{ "name": "'+pn+'", "version": "0.0.0", "type": "module", "scripts": { "dev": "vite", "build": "vue-tsc -b && vite build", "preview": "vite preview" }, "dependencies": { "vue": "^3.5.13", "vue-router": "^4.4.5", "pinia": "^2.3.0", "axios": "^1.7.9" }, "devDependencies": { "@vitejs/plugin-vue": "^5.2.1", "typescript": "~5.7.3", "vite": "^6.0.5", "vue-tsc": "^2.2.0" } } '); zip.file(folder+"vite.config.ts","import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' import { resolve } from 'path' export default defineConfig({ plugins: [vue()], resolve: { alias: { '@': resolve(__dirname,'src') } } }) "); zip.file(folder+"tsconfig.json",'{"files":[],"references":[{"path":"./tsconfig.app.json"},{"path":"./tsconfig.node.json"}]} '); zip.file(folder+"tsconfig.app.json",'{ "compilerOptions":{ "target":"ES2020","useDefineForClassFields":true,"module":"ESNext","lib":["ES2020","DOM","DOM.Iterable"], "skipLibCheck":true,"moduleResolution":"bundler","allowImportingTsExtensions":true, "isolatedModules":true,"moduleDetection":"force","noEmit":true,"jsxImportSource":"vue", "strict":true,"paths":{"@/*":["./src/*"]} }, "include":["src/**/*.ts","src/**/*.d.ts","src/**/*.tsx","src/**/*.vue"] } '); zip.file(folder+"env.d.ts","/// "); zip.file(folder+"index.html"," "+slugTitle(pn)+"
"); 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' import { createPinia } from 'pinia' import App from './App.vue' import './assets/main.css' const app = createApp(App) app.use(createPinia()) app.mount('#app') "); var hasApp=Object.keys(extracted).some(function(k){return k.indexOf("App.vue")>=0;}); if(!hasApp) zip.file(folder+"src/App.vue"," "); 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} "); 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)+" Generated by PantheraHive BOS. ## Setup ```bash npm install npm run dev ``` ## Build ```bash npm run build ``` Open in VS Code or WebStorm. "); zip.file(folder+".gitignore","node_modules/ dist/ .env .DS_Store *.local "); } /* --- 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",'{ "name": "'+pn+'", "version": "0.0.0", "scripts": { "ng": "ng", "start": "ng serve", "build": "ng build", "test": "ng test" }, "dependencies": { "@angular/animations": "^19.0.0", "@angular/common": "^19.0.0", "@angular/compiler": "^19.0.0", "@angular/core": "^19.0.0", "@angular/forms": "^19.0.0", "@angular/platform-browser": "^19.0.0", "@angular/platform-browser-dynamic": "^19.0.0", "@angular/router": "^19.0.0", "rxjs": "~7.8.0", "tslib": "^2.3.0", "zone.js": "~0.15.0" }, "devDependencies": { "@angular-devkit/build-angular": "^19.0.0", "@angular/cli": "^19.0.0", "@angular/compiler-cli": "^19.0.0", "typescript": "~5.6.0" } } '); zip.file(folder+"angular.json",'{ "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, "newProjectRoot": "projects", "projects": { "'+pn+'": { "projectType": "application", "root": "", "sourceRoot": "src", "prefix": "app", "architect": { "build": { "builder": "@angular-devkit/build-angular:application", "options": { "outputPath": "dist/'+pn+'", "index": "src/index.html", "browser": "src/main.ts", "tsConfig": "tsconfig.app.json", "styles": ["src/styles.css"], "scripts": [] } }, "serve": {"builder":"@angular-devkit/build-angular:dev-server","configurations":{"production":{"buildTarget":"'+pn+':build:production"},"development":{"buildTarget":"'+pn+':build:development"}},"defaultConfiguration":"development"} } } } } '); zip.file(folder+"tsconfig.json",'{ "compileOnSave": false, "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"]}, "references":[{"path":"./tsconfig.app.json"}] } '); zip.file(folder+"tsconfig.app.json",'{ "extends":"./tsconfig.json", "compilerOptions":{"outDir":"./dist/out-tsc","types":[]}, "files":["src/main.ts"], "include":["src/**/*.d.ts"] } '); zip.file(folder+"src/index.html"," "+slugTitle(pn)+" "); zip.file(folder+"src/main.ts","import { bootstrapApplication } from '@angular/platform-browser'; import { appConfig } from './app/app.config'; import { AppComponent } from './app/app.component'; bootstrapApplication(AppComponent, appConfig) .catch(err => console.error(err)); "); zip.file(folder+"src/styles.css","* { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: system-ui, -apple-system, sans-serif; background: #f9fafb; color: #111827; } "); 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'; import { RouterOutlet } from '@angular/router'; @Component({ selector: 'app-root', standalone: true, imports: [RouterOutlet], templateUrl: './app.component.html', styleUrl: './app.component.css' }) export class AppComponent { title = '"+pn+"'; } "); zip.file(folder+"src/app/app.component.html","

"+slugTitle(pn)+"

Built with PantheraHive BOS

"); 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} "); } zip.file(folder+"src/app/app.config.ts","import { ApplicationConfig, provideZoneChangeDetection } from '@angular/core'; import { provideRouter } from '@angular/router'; import { routes } from './app.routes'; export const appConfig: ApplicationConfig = { providers: [ provideZoneChangeDetection({ eventCoalescing: true }), provideRouter(routes) ] }; "); zip.file(folder+"src/app/app.routes.ts","import { Routes } from '@angular/router'; export const routes: Routes = []; "); 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)+" Generated by PantheraHive BOS. ## Setup ```bash npm install ng serve # or: npm start ``` ## Build ```bash ng build ``` Open in VS Code with Angular Language Service extension. "); zip.file(folder+".gitignore","node_modules/ dist/ .env .DS_Store *.local .angular/ "); } /* --- Python --- */ function buildPython(zip,folder,app,code){ var title=slugTitle(app); var pn=pkgName(app); var src=code.replace(/^```[w]* ?/m,"").replace(/ ?```$/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(" "):"# add dependencies here "; zip.file(folder+"main.py",src||"# "+title+" # Generated by PantheraHive BOS print(title+" loaded") "); zip.file(folder+"requirements.txt",reqsTxt); zip.file(folder+".env.example","# Environment variables "); zip.file(folder+"README.md","# "+title+" Generated by PantheraHive BOS. ## Setup ```bash python3 -m venv .venv source .venv/bin/activate pip install -r requirements.txt ``` ## Run ```bash python main.py ``` "); zip.file(folder+".gitignore",".venv/ __pycache__/ *.pyc .env .DS_Store "); } /* --- Node.js --- */ function buildNode(zip,folder,app,code){ var title=slugTitle(app); var pn=pkgName(app); var src=code.replace(/^```[w]* ?/m,"").replace(/ ?```$/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)+" "; zip.file(folder+"package.json",pkgJson); var fallback="const express=require("express"); const app=express(); app.use(express.json()); app.get("/",(req,res)=>{ res.json({message:""+title+" API"}); }); const PORT=process.env.PORT||3000; app.listen(PORT,()=>console.log("Server on port "+PORT)); "; zip.file(folder+"src/index.js",src||fallback); zip.file(folder+".env.example","PORT=3000 "); zip.file(folder+".gitignore","node_modules/ .env .DS_Store "); zip.file(folder+"README.md","# "+title+" Generated by PantheraHive BOS. ## Setup ```bash npm install ``` ## Run ```bash npm run dev ``` "); } /* --- 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:" "+title+" "+code+" "; zip.file(folder+"index.html",indexHtml); zip.file(folder+"style.css","/* "+title+" — styles */ *{margin:0;padding:0;box-sizing:border-box} body{font-family:system-ui,-apple-system,sans-serif;background:#fff;color:#1a1a2e} "); zip.file(folder+"script.js","/* "+title+" — scripts */ "); zip.file(folder+"assets/.gitkeep",""); zip.file(folder+"README.md","# "+title+" Generated by PantheraHive BOS. ## Open Double-click `index.html` in your browser. Or serve locally: ```bash npx serve . # or python3 -m http.server 3000 ``` "); zip.file(folder+".gitignore",".DS_Store node_modules/ .env "); } /* ===== 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(/ {2,}/g,"

"); h+="

"+hc+"

Generated by PantheraHive BOS
"; zip.file(folder+app+".html",h); zip.file(folder+"README.md","# "+title+" Generated by PantheraHive BOS. Files: - "+app+".md (Markdown) - "+app+".html (styled HTML) "); } 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);}});}