Real Estate Listing Generator
Run ID: 69cd31023e7fb09ff16a8d062026-04-01Real Estate
PantheraHive BOS
BOS Dashboard

Step 1: Property Analysis (analyze_property) - Comprehensive Data Gathering and Strategic Framework

This initial step, "analyze_property," is critical for laying the foundation of a compelling and effective real estate listing. Without a deep understanding of the property's unique characteristics, its market context, and its potential appeal, generating a truly professional and persuasive listing is impossible.

Our goal here is to systematically gather and categorize all relevant data points, enabling us to craft a listing that highlights strengths, addresses potential buyer concerns, and positions the property optimally within its market.

1. Purpose and Importance of Property Analysis

The analyze_property step serves several key functions:

2. Key Data Categories for Property Analysis

To ensure a thorough analysis, we will systematically collect information across the following categories. For each property, this data will be meticulously compiled and reviewed.

2.1. Property Overview & Core Specifications

2.2. Interior Features & Finishes

2.3. Exterior Features & Curb Appeal

2.4. Neighborhood & Location Analysis

* Shopping: Grocery stores, retail centers.

* Dining: Restaurants, cafes.

* Parks & Recreation: Public parks, trails, community centers, gyms.

* Healthcare: Hospitals, clinics.

* Cultural Attractions: Museums, theaters, libraries.

2.5. Market Data & Comparables

* Addresses: Of 3-5 recently sold similar properties.

* Sale Dates: Within the last 3-6 months.

* Sale Prices: Final closing prices.

* Key Features: Bed/bath, sq ft, lot size, year built, and any significant differences from the subject property.

* Average Days on Market (DOM) for similar properties.

* Price per square foot trends.

* Inventory levels (buyer's vs. seller's market).

* Average list-to-sale price ratio.

* Seasonal market fluctuations.

3. Data Collection Methodology & Sources

To gather this comprehensive data, we will utilize a combination of the following:

4. Analysis Output Structure

The output of this analyze_property step will be a structured report detailing all the collected information, organized into the categories above. This report will serve as the definitive "Property Brief" for all subsequent listing generation activities.

Example Snippet of Analysis Output:

markdown • 2,511 chars
## Property Analysis Report: [Property Address]

### 1. Property Overview & Core Specifications
*   **Property Type:** Single-Family Home
*   **Address:** 123 Maple Street, Anytown, CA 90210
*   **Asking Price:** $750,000
*   **Bedrooms:** 4
*   **Bathrooms:** 2.5
*   **Square Footage:** 2,200 sq ft
*   **Lot Size:** 0.25 acres (10,890 sq ft)
*   **Year Built:** 1985
*   **Property Taxes (Annual):** $8,500
*   **HOA/Condo Fees:** None
*   **Parking:** Attached 2-car garage, large driveway
*   **Utilities:** Central AC, Forced Air Gas Heating, City Water & Sewer

### 2. Interior Features & Finishes
*   **Kitchen:** Renovated 2020. Stainless steel Bosch appliances, quartz countertops, subway tile backsplash, custom shaker cabinets, large island with seating.
*   **Master Suite:** Large bedroom with walk-in closet, ensuite bathroom with dual vanity, soaking tub, and separate glass-enclosed shower.
*   **Flooring:** Hardwood throughout main living areas, new carpet in bedrooms, tile in bathrooms.
*   **Unique Details:** Gas fireplace in living room, built-in bookshelves in office, smart thermostat.
*   **Condition:** Excellent, move-in ready.

### 3. Exterior Features & Curb Appeal
*   **Architectural Style:** Contemporary Ranch
*   **Construction:** Stucco exterior, composite shingle roof (replaced 2018).
*   **Landscaping:** Professionally landscaped front and back yards, mature oak tree, automated sprinkler system.
*   **Outdoor Living:** Large redwood deck (built 2021) with integrated seating, private backyard.
*   **Views:** Partial hillside views from master bedroom.

### 4. Neighborhood & Location Analysis
*   **School District:** Anytown Unified School District (Maple Elementary - 8/10, Central Middle - 7/10, Anytown High - 9/10).
*   **Walkability Score:** 65 (Somewhat Walkable).
*   **Nearby Amenities:** 0.5 miles to Maple Street Park, 1 mile to Anytown Town Center (shopping, dining, cinema), 2 miles to commuter train station.
*   **Community Vibe:** Established, family-friendly suburban neighborhood.

### 5. Market Data & Comparables
*   **Comp 1:** 120 Oak Ave, Sold $765,000 (3 bed, 2 bath, 2100 sq ft, renovated 2019, sold 2 weeks ago).
*   **Comp 2:** 135 Pine St, Sold $730,000 (4 bed, 2.5 bath, 2300 sq ft, original condition, sold 1 month ago).
*   **Local Trends:** Anytown market is strong, average DOM 25 days, 99% list-to-sale price ratio for similar homes.
*   **USP:** Recently renovated kitchen/baths, large private deck, top-rated high school district.
Sandboxed live preview

5. Recommendations and Next Steps

Based on this comprehensive property analysis, the immediate next steps are:

  1. Review and Validate: The client (you) should thoroughly review this Property Analysis Report for accuracy and completeness. Provide any missing details or corrections.
  2. Highlight Key Selling Points: Identify the top 3-5 features from this analysis that are most likely to attract the target buyer and differentiate the property.
  3. Confirm Target Audience: Based on the property's features and neighborhood analysis, confirm the ideal buyer profile (e.g., young families, empty nesters, professionals).
  4. Proceed to Step 2: generate_listing_draft: Once the analysis is validated, we will use this detailed information to begin crafting the initial draft of the real estate listing, focusing on compelling descriptions, feature highlights, and an engaging narrative.

This detailed analysis ensures that your real estate listing will be data-rich, strategically positioned, and highly effective in attracting the right buyers.

gemini Output

Real Estate Listing Generator: Professional Output


Headline: Exquisite Family Haven in Maplewood Estates: Modern Luxury Meets Suburban Charm


1. Compelling Property Description

Discover Your Dream Home in Willow Creek's Coveted Maplewood Estates!

Nestled within the serene, tree-lined streets of Maplewood Estates, this stunning 4-bedroom, 3.5-bathroom residence offers an unparalleled blend of modern luxury and classic suburban comfort. Spanning over 2,800 sq ft, this meticulously maintained home is designed for sophisticated living and effortless entertaining. From the moment you step inside, you'll be captivated by the open-concept layout, sun-drenched interiors, and high-end finishes that define every space.

Imagine preparing gourmet meals in your chef's kitchen, relaxing by the fireplace in the expansive living room, or unwinding in your private backyard oasis. With top-rated schools, vibrant community amenities, and convenient access to urban conveniences, this property isn't just a house – it's the lifestyle you've been dreaming of. This is more than a home; it's a sanctuary crafted for creating lasting memories.


2. Key Property Features & Highlights

  • Address: [Street Address], Maplewood Estates, Willow Creek, [State Abbreviation] [Zip Code]
  • Property Type: Single-Family Home
  • Bedrooms: 4
  • Bathrooms: 3 Full, 1 Half
  • Square Footage: 2,820 sq ft (Above Grade) + 800 sq ft (Finished Basement)
  • Lot Size: 0.26 Acres
  • Year Built: 2018
  • Price: \$749,900

Interior Highlights:

  • Gourmet Kitchen: State-of-the-art stainless steel appliances, quartz countertops, custom cabinetry, large center island with breakfast bar, walk-in pantry, and designer tile backsplash.
  • Spacious Living Areas: Open-concept living room with a gas fireplace, formal dining room, and a versatile office/den on the main floor.
  • Luxurious Master Suite: Generously sized bedroom with a spa-like ensuite bathroom featuring a soaking tub, frameless glass shower, dual vanities, and a walk-in closet with custom organizers.
  • Finished Basement: Expansive lower level offers additional living space, perfect for a home theater, gym, or recreation room, complete with a full bathroom.
  • Smart Home Technology: Integrated smart thermostat, smart lighting, and security system for modern convenience and energy efficiency.
  • High Ceilings & Hardwood Floors: Throughout the main living areas, enhancing the sense of space and elegance.
  • Energy Efficient: New windows, updated HVAC, and superior insulation for lower utility costs.

Exterior & Outdoor Highlights:

  • Curb Appeal: Beautifully landscaped front yard with mature plantings and a welcoming front porch.
  • Private Backyard Oasis: Fully fenced, professionally designed backyard featuring a large composite deck, paver patio, lush lawn, and mature privacy trees – ideal for outdoor entertaining and relaxation.
  • Attached Garage: Two-car garage with ample storage space and direct home access.
  • Sprinkler System: Automated system to maintain pristine landscaping with ease.

3. Neighborhood Spotlight: Maplewood Estates, Willow Creek

Experience the Best of Suburban Living!

Maplewood Estates is not just a neighborhood; it's a vibrant, family-friendly community renowned for its picturesque setting, excellent amenities, and strong sense of belonging. Located in the highly sought-after Willow Creek area, residents enjoy the perfect balance of peaceful suburban living with convenient access to urban centers.

  • Location & Commute: Strategically located with easy access to major highways (I-95, Route 1), offering a seamless commute to downtown [Nearby City], business districts, and surrounding areas. Public transportation options are also readily available.
  • Education: Zoned for the top-rated Willow Creek School District, including Maplewood Elementary, Willow Creek Middle, and Willow Creek High School, all recognized for academic excellence and diverse extracurricular programs.
  • Shopping & Dining: Just minutes away from Willow Creek Town Center, offering a wide array of boutique shops, major retailers, gourmet grocery stores, and an eclectic mix of dining options from casual cafes to fine dining restaurants.
  • Recreation & Parks: Enjoy an active lifestyle with numerous parks, walking trails, and recreational facilities nearby. Maplewood Community Park, with its playgrounds, sports fields, and picnic areas, is just a short stroll away. The Willow Creek Country Club is also within easy reach for golf enthusiasts.
  • Community Vibe: A friendly and welcoming community with regular neighborhood events, block parties, and active homeowner associations that foster a strong sense of camaraderie.

4. Investment & Value: Pricing Analysis & Market Snapshot

Smart Investment in a Thriving Market

This property is competitively priced within the robust Willow Creek real estate market, reflecting its premium features, excellent condition, and desirable location.

  • Comparative Market Analysis (CMA) Overview:

* Average Sales Price (Willow Creek, Last 6 Months): \$720,000

* Average Sales Price (Maplewood Estates, Last 6 Months): \$765,000

* Average Price Per Sq Ft (Maplewood Estates): \$275

* Days On Market (DOM) Average (Maplewood Estates): 28 days

* Current Listing Price for This Property: \$749,900 (\$266/sq ft based on above-grade)

  • Recent Sales in Maplewood Estates (Similar Properties):

* 123 Oak Lane: 4 Bed, 3.5 Bath, 2,750 sq ft, Sold for \$755,000 (35 days on market, recently renovated kitchen)

* 456 Pine Drive: 4 Bed, 3 Bath, 2,900 sq ft, Sold for \$770,000 (20 days on market, larger lot, finished basement)

* 789 Elm Street: 3 Bed, 2.5 Bath, 2,500 sq ft, Sold for \$695,000 (45 days on market, older build, no finished basement)

  • Market Trends: The Willow Creek market, particularly in established communities like Maplewood Estates, continues to demonstrate strong appreciation. Low inventory and high demand for move-in ready homes make this an opportune time to invest. This property's modern amenities and pristine condition position it favorably against comparable listings, offering excellent long-term value.

5. Why This Home Is Perfect For You

This home is ideal for families seeking a spacious, modern, and turn-key living experience in a highly desirable and community-oriented neighborhood. It’s perfect for those who appreciate:

  • Modern Comforts: Enjoy the peace of mind that comes with a newer build, updated systems, and smart home technology.
  • Entertaining: The open layout, gourmet kitchen, and private backyard are perfect for hosting gatherings of any size.
  • Family Life: Excellent schools, safe streets, and abundant recreational opportunities make this an ideal environment to raise a family.
  • Convenience: Easy access to shopping, dining, commuting routes, and all the amenities Willow Creek has to offer.

6. Marketing Call to Action (CTA)

Don't Miss This Exceptional Opportunity!

Properties of this caliber in Maplewood Estates are highly sought after and rarely stay on the market for long. We invite you to experience the charm and elegance of this remarkable home firsthand.

Schedule Your Private Showing Today!

Call [Agent Name] at [Agent Phone Number] or Email [Agent Email Address] to arrange your personal tour.

Visit our website for a virtual tour and more details: [Website Link]


7. Professional Contact Information

Presented by:

[Your Name/Agent Name]

[Your Title/Agent Title]

[Your Real Estate Company Name]

[Your Company Address]

Phone: [Your Phone Number]

Email: [Your Email Address]

Website: [Your Website]

License #: [Your Real Estate License Number]


8. Social Media Snippets / Short Descriptions

For Instagram/Facebook:

🏡 JUST LISTED! Step into luxury in Maplewood Estates, Willow Creek! This stunning 4 bed, 3.5 bath home boasts a gourmet kitchen, finished basement, and a backyard oasis. Top schools & prime location. Your dream home awaits! ✨ DM for details or click link in bio. #MaplewoodEstates #WillowCreekHomes #LuxuryRealEstate #DreamHome #NewListing #RealEstate

For Twitter:

NEW LISTING ALERT! 🚨 Exquisite 4BD/3.5BA in coveted Maplewood Estates, Willow Creek. Modern design, gourmet kitchen, private yard. Perfect for families! Priced at \$749,900. Don't miss out! #WillowCreek #RealEstate #HomeForSale #LuxuryLiving #AgentName

For LinkedIn:

Proud to present a magnificent new listing in Maplewood Estates, Willow Creek. This 4-bedroom, 3.5-bathroom single-family home offers 2,800+ sq ft of modern luxury, ideal for discerning buyers. Features include a chef's kitchen, finished basement, and an exceptional outdoor living space. Located in a top-rated school district with unparalleled community amenities. A prime investment opportunity. Contact me for a private viewing. #RealEstateInvestment #LuxuryHomes #WillowCreekRealEstate #PropertyListing #AgentName

gemini Output

Real Estate Listing Marketing Strategy: Comprehensive Deliverable

This document outlines a comprehensive marketing strategy designed to maximize the reach, engagement, and conversion for your real estate listings. By leveraging a multi-faceted approach, we aim to attract qualified buyers and secure optimal outcomes.


1. Target Audience Analysis

Understanding who your ideal buyer is crucial for tailoring effective marketing efforts. While each property may attract slightly different demographics, a general framework helps define primary and secondary target segments.

  • Primary Target Segment: The "Aspirant Homeowner"

* Demographics: Typically 28-45 years old, professional or dual-income households, often with young families or planning to start one. Middle to upper-middle income bracket.

* Psychographics: Value stability, community, good schools, safety, and a comfortable lifestyle. Seek convenience, modern amenities, and space for growth. Often first-time homebuyers looking to establish roots, or second-time buyers upgrading for more space/better location.

* Buying Behavior: Actively browse online portals (Zillow, Realtor.com, Redfin), attend open houses, engage with real estate agents, and research neighborhoods extensively. Value online reviews and virtual tours.

  • Secondary Target Segment: The "Savvy Investor/Downsizer"

* Demographics: Investors (any age, high net worth) or empty nesters/retirees (55+).

* Psychographics: Investors seek ROI, rental income potential, and property appreciation. Downsizers prioritize low maintenance, accessibility, proximity to amenities, and a simplified lifestyle.

* Buying Behavior: Investors often work with specific agents or investment groups, analyze market data, and look for properties with strong rental yields or renovation potential. Downsizers may be less tech-savvy but rely on agent recommendations and word-of-mouth.

  • Tertiary Target Segment: The "Luxury Seeker" (Property-Dependent)

* Demographics: High net worth individuals, often 40+, seeking premium features, exclusive locations, and unique properties.

* Psychographics: Value privacy, prestige, bespoke design, and high-end finishes. Lifestyle is a major driver.

* Buying Behavior: Often discreet, rely on private showings, exclusive networks, and high-touch agent services.


2. Channel Recommendations

A multi-channel approach ensures maximum visibility and engagement across various buyer touchpoints.

  • A. Digital & Online Platforms (High Priority)

* Multiple Listing Service (MLS): The foundational platform. Ensure high-quality photos, detailed descriptions generated by the tool, and virtual tours are syndicated accurately.

* Major Real Estate Portals: Zillow, Realtor.com, Redfin, Trulia, Homes.com. Optimize listings with compelling headlines, keyword-rich descriptions, and all available media (photos, videos, 3D tours).

* Social Media Marketing:

* Facebook & Instagram: High-resolution photos, short video walk-throughs, lifestyle-focused content (e.g., "Imagine your mornings here!"). Target specific demographics and interests using paid ads.

* TikTok/Reels: Short, engaging videos highlighting key features, "day in the life" scenarios, or quick neighborhood tours.

* LinkedIn: For higher-end or commercial properties, targeting professionals and investors.

* Google My Business & Local SEO: Optimize agent's GMB profile with property links and local keywords.

* Email Marketing: Leverage existing client databases and lead generation lists. Send targeted email campaigns with new listing alerts, open house invitations, and neighborhood spotlights.

* Agent/Brokerage Website: Dedicated property page with comprehensive details, high-res media, downloadable brochures, and contact forms.

* Virtual Tours & High-Quality Photography:

* 3D Matterport Tours: Allow immersive, self-guided exploration.

* Drone Photography/Videography: Showcase property scale, lot size, and neighborhood context.

* Professional Photography: Essential for first impressions; bright, wide-angle shots.

  • B. Traditional & Offline Channels (Medium Priority)

* Open Houses: Strategically scheduled and well-promoted. Offer property brochures, refreshments, and a welcoming atmosphere.

* For Sale Signage: Prominent, professional signage with contact information. Consider a QR code linking to the property's dedicated webpage.

* Print Media (Local): Local real estate magazines, community newspapers. Feature high-impact photos and concise, compelling descriptions for select properties.

* Direct Mail: Postcards or flyers targeting specific local demographics or nearby renters/potential upgraders.

* Agent Network & Referrals: Leverage professional relationships with other agents and past clients.

  • C. Experiential Marketing (Property-Dependent)

* Staging: Professionally stage vacant properties to help buyers visualize the space.

* Broker Open House: Invite other agents to preview the property and generate buzz within the professional community.

* Neighborhood Events: If applicable, leverage local events to promote the property's community features.


3. Messaging Framework

The messaging framework ensures consistency and impact across all marketing channels, focusing on the unique selling propositions (USPs) of the property.

  • A. Core Value Proposition:

* "Your Dream Lifestyle Awaits": Focus on the emotional benefits and the lifestyle the property offers (e.g., "Imagine serene mornings on your private patio," "Host unforgettable gatherings in your gourmet kitchen").

* "Unparalleled Value & Opportunity": Highlight investment potential, unique features, or competitive pricing (e.g., "A rare find in a coveted school district," "Modern upgrades for timeless appeal").

* "Prime Location, Ultimate Convenience": Emphasize proximity to amenities, transport, schools, and vibrant community hubs.

  • B. Key Selling Points (KSPs):

* Feature-Benefit Statements: Translate features into benefits.

Feature: "New stainless steel appliances." Benefit:* "Cook like a chef in your updated kitchen."

Feature: "Large backyard." Benefit:* "Enjoy outdoor living and entertaining year-round."

Feature: "Close to downtown." Benefit:* "Effortless commute and vibrant city access."

* Highlight Unique Attributes: Emphasize anything that sets the property apart (e.g., architectural style, smart home technology, energy efficiency, recent renovations, stunning views).

* Neighborhood Narrative: Weave in details about the community, local attractions, schools, parks, and safety.

  • C. Emotional Triggers:

* Sense of Belonging: "Find your forever home."

* Aspiration: "Live the life you've always dreamed of."

* Security & Comfort: "A safe haven for your family."

* Exclusivity: "A rare opportunity in a sought-after locale."

  • D. Calls to Action (CTAs): Clear, direct, and channel-specific.

* "Schedule Your Private Showing Today!"

* "Visit Our Open House This Weekend!"

* "Explore the 3D Virtual Tour Now!"

* "Contact [Agent Name] for More Information."

* "Download the Full Property Brochure."


4. Key Performance Indicators (KPIs)

Tracking these KPIs will provide insights into the effectiveness of the marketing strategy and guide adjustments.

  • A. Engagement & Reach Metrics:

* Total Listing Views: Across all online portals (MLS, Zillow, Realtor.com, etc.).

* Website Traffic: Unique visitors to the dedicated property page on the agent/brokerage website.

* Virtual Tour Views: Number of times the 3D tour or video walkthrough is accessed.

* Social Media Impressions & Clicks: How many people saw the post, and how many clicked through to the listing.

* Email Open & Click-Through Rates: For listing announcement campaigns.

  • B. Lead Generation & Conversion Metrics:

* Number of Inquiries: Direct calls, emails, or form submissions from interested buyers.

* Scheduled Showings: Number of private showings booked.

* Open House Attendance: Number of prospective buyers who visited.

* Number of Offers Received: The ultimate indicator of buyer interest.

* Lead-to-Showing Conversion Rate: Percentage of inquiries that result in a showing.

  • C. Financial & Efficiency Metrics:

* Days on Market (DOM): How long the property takes to sell. A shorter DOM indicates high demand and effective marketing.

* List-to-Sale Price Ratio: The percentage difference between the initial listing price and the final sale price.

* Marketing Spend per Lead/Conversion: For paid advertising, evaluate the cost-effectiveness.

* Feedback from Showings: Qualitative data from buyers and agents about pricing, condition, and appeal.


By systematically implementing this marketing strategy and continuously monitoring these KPIs, you will effectively position your real estate listings for maximum exposure and successful sales outcomes.

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