Instant Resume Enhancement
Run ID: 69ccf3543e7fb09ff16a68622026-04-01Career
PantheraHive BOS
BOS Dashboard

Generate a professional resume with ATS optimization

Thank you for initiating the "Instant Resume Enhancement" workflow. This step focuses on generating a professional, ATS-optimized resume designed to maximize your chances of getting noticed by recruiters and Applicant Tracking Systems.

Since this is the initial generation phase and we do not yet have your specific personal details, work history, education, or skills, this output will provide:

  1. A comprehensive explanation of what an ATS-optimized professional resume entails.
  2. A detailed, best-practice template structure you can follow.
  3. Actionable guidance on how to populate each section for maximum impact.
  4. The next steps to submit your information for a personalized resume generation.

Instant Resume Enhancement: Your ATS-Optimized Professional Resume

Overview

The goal of this enhancement is to create a resume that not only highlights your qualifications and achievements effectively to human recruiters but also successfully navigates Applicant Tracking Systems (ATS). An ATS is software used by nearly all large companies (and many smaller ones) to scan, filter, and rank resumes based on keywords, formatting, and relevance to the job description.

Your enhanced resume will be:

  • Keyword-Rich: Incorporating industry-specific and job-relevant keywords.
  • Clearly Formatted: Using standard, clean layouts that ATS can easily parse.
  • Achievement-Oriented: Quantifying your accomplishments to demonstrate impact.
  • Tailored: Designed to be easily adaptable for specific job applications.

1. Understanding ATS Optimization Principles

To ensure your resume passes ATS scrutiny and stands out, we adhere to the following principles:

  • Keyword Integration:

* Identify keywords directly from target job descriptions (skills, responsibilities, tools, qualifications).

* Strategically weave these keywords into your professional summary, work experience, and skills sections.

* Avoid "keyword stuffing" – integrate naturally and contextually.

  • Standard Formatting & Layout:

* Use clear, common headings (e.g., "Work Experience," "Education," "Skills").

* Opt for standard fonts (e.g., Calibri, Arial, Lato, Georgia) in readable sizes (10-12pt for body, 14-18pt for headings).

* Avoid complex graphics, tables, text boxes, or excessive use of columns that can confuse ATS.

* Maintain consistent spacing and bullet points.

  • File Type:

* Always submit your resume as a PDF unless explicitly requested otherwise. PDFs preserve formatting across different systems better than Word documents, while still being parseable by most modern ATS.

  • Quantifiable Achievements:

* ATS often looks for metrics and numbers. Quantify your accomplishments whenever possible (e.g., "Increased sales by 15%," "Managed a budget of $500K," "Reduced project completion time by 20%").

  • Conciseness & Relevance:

* Typically, one page for every 10 years of experience is a good guideline. Focus on the most relevant experiences and skills for your target roles.

2. Your Professional Resume Structure (Template)

Below is a detailed structure for your ATS-optimized professional resume. Each section includes best practices and guidance for populating it.


[YOUR FULL NAME]

[Phone Number] | [Email Address] | [LinkedIn Profile URL] | [Portfolio/Personal Website URL (Optional)] | [City, State]


Professional Summary / Objective (2-4 sentences)

  • Purpose: A concise, powerful overview of your career, key skills, and career aspirations (if using an objective). This is your elevator pitch.
  • ATS Focus: Must be rich in keywords relevant to your target role.
  • Best Practices:

* Summary: Ideal for experienced professionals. Highlight your years of experience, core competencies, and 2-3 significant achievements.

* Objective: Suitable for entry-level candidates or those making a career change. State the type of role you're seeking and how your skills align.

* Example (Summary): "Highly motivated and results-driven Marketing Manager with 8+ years of experience in digital strategy, SEO, and content creation. Proven ability to lead successful campaigns, increase brand engagement by 25%, and drive revenue growth. Seeking to leverage expertise in data analytics and team leadership to achieve strategic marketing objectives for [Company Name]."


Work Experience

  • Purpose: Detail your professional history, responsibilities, and key achievements. This is the core of your resume.
  • ATS Focus: Keyword-heavy descriptions of responsibilities and achievements, quantifiable metrics.
  • Best Practices:

* List in reverse chronological order (most recent first).

* For each role, include:

* Job Title: [Your Title]

* Company Name: [Company Name], [City, State]

* Dates Employed: [Start Date] – [End Date] (e.g., "January 2020 – Present")

* Use 3-5 bullet points per role, starting with strong action verbs.

* Quantify achievements whenever possible (e.g., "Managed a team of 5," "Increased customer satisfaction by 10%," "Reduced operational costs by $X").

* Tailor bullet points to the job description, emphasizing relevant skills and experiences.

* STAR Method (Situation, Task, Action, Result) in brief: While not explicitly written out, structure your bullet points to implicitly show the challenge, your action, and the positive outcome.

* Example:

* Senior Project Manager | Tech Innovations Inc., Seattle, WA | January 2020 – Present

* Led cross-functional teams of 10-15 engineers and designers through the full SDLC for 5+ major software projects, consistently delivering 10% under budget.

* Implemented agile methodologies, resulting in a 20% reduction in project completion time and enhanced team productivity.

* Managed project budgets up to $2M, ensuring effective resource allocation and financial oversight.

* Collaborated with stakeholders to define project scopes, objectives, and deliverables, achieving a 95% client satisfaction rate.


Education

  • Purpose: Showcase your academic qualifications.
  • ATS Focus: Clear institution names, degrees, and relevant academic achievements.
  • Best Practices:

* List in reverse chronological order.

* For each entry, include:

* Degree: [Degree Name] (e.g., "Master of Business Administration," "Bachelor of Science in Computer Science")

* Major/Minor: [Major], [Minor (Optional)]

* University Name: [University Name], [City, State]

* Graduation Date: [Month, Year] (or "Expected [Month, Year]")

* GPA (Optional): Include if 3.5 or higher.

* Relevant Coursework/Projects (Optional): Especially useful for recent graduates.

* Example:

* Master of Business Administration (MBA) | University of Washington, Seattle, WA | May 2022

Specialization:* Marketing & Strategy

Relevant Coursework:* Digital Marketing Analytics, Strategic Management, Financial Modeling

* Bachelor of Science in Computer Science | Georgia Institute of Technology, Atlanta, GA | May 2018

GPA:* 3.8/4.0

Awards:* Dean's List (all semesters)


Skills

  • Purpose: Clearly list your technical and soft skills relevant to your target roles.
  • ATS Focus: This section is heavily scanned for keywords. Categorize skills for clarity.
  • Best Practices:

* Break down skills into categories (e.g., Technical Skills, Software, Languages, Soft Skills).

* Use specific terms (e.g., "Python," "AWS," "Salesforce," instead of just "Programming").

* Include a mix of hard skills (measurable abilities) and relevant soft skills (interpersonal attributes).

* Example:

* Technical Skills: Python, Java, SQL, AWS, Azure, Docker, Kubernetes, Git, Jenkins, RESTful APIs

* Software: Salesforce, HubSpot, Microsoft Office Suite (Excel, Word, PowerPoint), Tableau, Jira, Confluence

* Marketing Tools: Google Analytics, SEO (SEMrush, Ahrefs), SEM (Google Ads), Social Media Marketing

* Languages: English (Native), Spanish (Conversational)

* Soft Skills: Project Management, Team Leadership, Problem-Solving, Communication, Stakeholder Management, Agile Methodologies


Optional Sections (Include if relevant and space allows)

  • Projects:

* For developers, designers, or anyone with significant personal or academic projects.

* Format similar to work experience, highlighting your role, technologies used, and outcomes.

  • Certifications & Licenses:

* List relevant professional certifications (e.g., PMP, AWS Certified Solutions Architect, Google Analytics Certification).

  • Awards & Honors:

* Academic or professional recognitions.

  • Volunteer Experience:

* Demonstrates leadership, teamwork, and commitment, especially for less experienced candidates.

  • Publications/Presentations:

* For academic or research-heavy roles.


3. Next Steps: Personalizing Your Resume

To generate your specific, personalized, ATS-optimized resume, we need your input. Please provide the following information:

  1. Your Current Resume (if you have one): Submit your existing resume in any format (Word, PDF, plain text).
  2. Target Job Descriptions (1-3 examples): Provide links or text of job postings you are interested in. This is crucial for keyword optimization.
  3. Your Contact Information: Full Name, Phone, Email, LinkedIn Profile URL, City, State.
  4. Work Experience Details:

* For each role: Job Title, Company Name, City, State, Start Date, End Date.

* For each role: 3-5 bullet points describing your responsibilities and, most importantly, your achievements (quantified whenever possible).

  1. Education Details:

* For each degree: Degree Name, Major/Minor, University Name, City, State, Graduation Date.

* Optional: GPA (if >3.5), relevant coursework, honors.

  1. Skills:

* List all relevant technical skills, software proficiency, languages, and key soft skills. Be specific.

  1. Optional Sections (if applicable):

* Projects (brief description, your role, technologies, outcomes)

* Certifications (Name, Issuing Body, Date)

* Awards, Volunteer Work, Publications.

  1. Any specific preferences or career goals: (e.g., "I want to highlight my leadership experience," "I'm transitioning from X to Y role").

Please provide this information in a structured format (e.g., bullet points, a document, or directly in the chat). Once received, we will proceed with crafting your tailored resume.

4. Key Takeaways for an Outstanding Resume

  • Tailor, Tailor, Tailor: Every resume submission should be slightly adapted to the specific job description.
  • Proofread Meticulously: Typos and grammatical errors are instant red flags.
  • Be Truthful: Always maintain integrity.
  • Action-Oriented Language: Start bullet points with strong verbs (e.g., "Developed," "Managed," "Led," "Implemented," "Achieved").
  • Quantify Everything Possible: Numbers speak louder than words.
  • Clean & Modern Design: While ATS-friendly, the resume should still be visually appealing and easy for human eyes to read.

We are ready to transform your professional profile into an ATS-optimized resume that truly reflects your capabilities and career aspirations. Please submit the requested information, and we will begin the personalized generation process.

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