Website Code Generator
Run ID: 69cce5733e7fb09ff16a60872026-04-01Web Development
PantheraHive BOS
BOS Dashboard

Website Code Generator: Deployment Ready!

Your website code has been successfully generated and is now ready for review, download, and deployment! This output provides you with the complete HTML, CSS, and JavaScript files, along with comprehensive instructions on how to preview your site and deploy it to a hosting platform of your choice.


1. Project Summary

Workflow: Website Code Generator

Status: Complete (Step 2 of 2: websitebuilderdeploy)

Output: Comprehensive HTML, CSS, and JavaScript files for your website.

Key Features: Responsive design, clean code structure, ready for immediate deployment.


2. Access Your Website Code

Below you will find the generated code for your website. For ease of use, the code is separated into its respective files (HTML, CSS, JavaScript). You can copy these directly or download a bundled archive containing all files.

2.1. HTML Structure (index.html)

This file contains the main structure and content of your website.

css • 3,495 chars
/* General Body & Typography */
body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    line-height: 1.6;
    color: #333;
}

/* Header & Navigation */
header {
    background: #333;
    color: #fff;
    padding: 1rem 0;
    position: sticky;
    top: 0;
    z-index: 1000;
}

nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.logo {
    font-size: 1.5rem;
    font-weight: bold;
}

nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
}

nav ul li {
    margin-left: 20px;
}

nav ul li a {
    color: #fff;
    text-decoration: none;
    transition: color 0.3s ease;
}

nav ul li a:hover {
    color: #007bff;
}

/* Hero Section */
.hero {
    background: url('https://via.placeholder.com/1500x800?text=Your+Hero+Image') no-repeat center center/cover;
    color: #fff;
    text-align: center;
    padding: 100px 20px;
    min-height: 500px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.hero h1 {
    font-size: 3rem;
    margin-bottom: 20px;
}

.hero p {
    font-size: 1.2rem;
    max-width: 700px;
    margin-bottom: 30px;
}

/* General Sections */
.section-content {
    max-width: 1200px;
    margin: 40px auto;
    padding: 20px;
    text-align: center;
}

h2 {
    font-size: 2.5rem;
    margin-bottom: 30px;
    color: #007bff;
}

/* Buttons */
.btn {
    display: inline-block;
    background: #007bff;
    color: #fff;
    padding: 10px 20px;
    text-decoration: none;
    border-radius: 5px;
    transition: background 0.3s ease;
}

.btn:hover {
    background: #0056b3;
}

/* Service Grid */
.service-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    margin-top: 40px;
}

.service-item {
    background: #f4f4f4;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    text-align: left;
}

.service-item h3 {
    color: #333;
    margin-bottom: 15px;
}

/* Forms */
#contact-form {
    display: flex;
    flex-direction: column;
    max-width: 600px;
    margin: 0 auto 30px auto;
    gap: 15px;
}

#contact-form input,
#contact-form textarea {
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 1rem;
}

#contact-form button {
    padding: 12px 20px;
    border: none;
    border-radius: 5px;
    background: #007bff;
    color: #fff;
    font-size: 1.1rem;
    cursor: pointer;
    transition: background 0.3s ease;
}

#contact-form button:hover {
    background: #0056b3;
}

/* Footer */
footer {
    background: #333;
    color: #fff;
    text-align: center;
    padding: 30px 20px;
    margin-top: 50px;
}

.social-links a {
    color: #fff;
    margin: 0 10px;
    text-decoration: none;
    transition: color 0.3s ease;
}

.social-links a:hover {
    color: #007bff;
}

/* Responsive Design */
@media (max-width: 768px) {
    nav {
        flex-direction: column;
    }
    nav ul {
        margin-top: 15px;
    }
    nav ul li {
        margin: 0 10px;
    }
    .hero h1 {
        font-size: 2.5rem;
    }
    h2 {
        font-size: 2rem;
    }
}

@media (max-width: 480px) {
    .hero h1 {
        font-size: 2rem;
    }
    .hero p {
        font-size: 1rem;
    }
    nav ul {
        flex-direction: column;
        align-items: center;
    }
    nav ul li {
        margin-bottom: 10px;
    }
}
Sandboxed live preview

Website Code Generator: Step 1 of 2 - Gathering Requirements for Site Generation

Welcome to the Website Code Generator workflow! You are currently on the first step, where we gather all necessary information to generate your complete HTML, CSS, and JavaScript code. Our goal is to create a professional, functional, and visually appealing website that meets your specific needs.

To ensure the generated code accurately reflects your vision, please provide comprehensive details across the following categories. The more specific you are, the better we can tailor the output.


1. Website Purpose & Target Audience

  • What is the primary purpose of this website? (e.g., E-commerce store, portfolio, business landing page, blog, personal site, educational resource, event promotion, lead generation)
  • Who is the target audience? (e.g., Young professionals, small business owners, artists, tech enthusiasts, local community, global customers)
  • What is the main goal you want visitors to achieve on your site? (e.g., Make a purchase, fill out a contact form, view a portfolio, read articles, sign up for a newsletter)

2. Core Content & Sections

Please list the essential pages or sections you envision for your website. For each, provide a brief description of its content.

  • Home Page:

Example:* Hero section with a strong headline and call-to-action, brief overview of services/products, testimonials.

  • About Us/Company:

Example:* Our story, mission, team members, values.

  • Services/Products:

Example:* List of services with descriptions, product catalog, pricing plans.

  • Portfolio/Gallery:

Example:* Showcase of past projects, image gallery with captions.

  • Blog/News:

Example:* Latest articles, categories, search functionality.

  • Contact Us:

Example:* Contact form, location map, contact details (phone, email).

  • Other Specific Sections: (e.g., FAQ, Testimonials, Team, Careers, Pricing, Legal/Privacy Policy)

Please specify:*


3. Design & Aesthetic Preferences

Provide details on your preferred visual style. If you have any existing branding (logo, style guide), please describe or indicate its availability.

  • Overall Mood/Tone: (e.g., Modern, minimalist, corporate, playful, rustic, elegant, bold, clean, futuristic)
  • Color Palette:

* Primary Colors: (e.g., #007bff - Blue, #ffffff - White)

* Secondary/Accent Colors: (e.g., #28a745 - Green, #dc3545 - Red)

Alternatively, describe:* "Warm earthy tones," "Cool professional blues and greys," "Bright and vibrant."

  • Typography:

* Preferred Font Styles: (e.g., Sans-serif for headings and body, a specific decorative font for titles, Google Fonts preference)

Example:* "Clean sans-serif like Montserrat for headings, readable serif like Merriweather for body text."

  • Layout Style: (e.g., Grid-based, single-page scroll, multi-page, full-width, boxed layout, asymmetric)
  • Imagery Style: (e.g., High-quality photography, flat illustrations, abstract graphics, icon-based)
  • Inspirations/Examples: Do you have any websites you admire or want to emulate in terms of design or functionality? (You can describe their key features/aesthetics).

4. Interactive Elements & Functionality (JavaScript)

Specify any dynamic features or interactive elements you would like to include.

  • Forms: (e.g., Contact form, newsletter signup, search bar, login/registration form)
  • Navigation: (e.g., Sticky header, responsive mobile menu (hamburger icon), smooth scroll to sections)
  • Sliders/Carousels: (e.g., Image gallery, testimonial slider, hero banner carousel)
  • Animations: (e.g., Scroll animations, hover effects, subtle transitions)
  • Accordions/Tabs: (e.g., For FAQ sections, product details)
  • Modals/Pop-ups: (e.g., For cookie consent, promotions)
  • Other: (e.g., Interactive maps, filtering/sorting options, countdown timers)

5. Technical Considerations

  • Responsiveness: Is it crucial for the website to be fully responsive across all devices (desktop, tablet, mobile)? (Default is yes, but confirm any specific priorities).
  • Browser Compatibility: Are there any specific browsers that are a priority for compatibility (e.g., latest Chrome, Firefox, Safari, Edge, or older IE versions)?
  • Any specific frameworks or libraries you prefer or want to avoid? (e.g., Bootstrap, jQuery - Note: Default generation will be pure HTML/CSS/JS unless specified otherwise).

Next Steps:

Once we receive your detailed input, our system will process these requirements to generate the complete HTML, CSS, and JavaScript code for your website.

Step 2 of 2 will involve presenting you with the generated code and a live preview, allowing you to review and request any further adjustments.

We look forward to creating your website!

2.4. Download Your Code

For your convenience, you can download all generated files in a single .zip archive:

[Download Website Code (.zip)](https://example.com/download/your-website-code.zip)

(Note: This is a placeholder link. In a real system, this would be a direct download.)


3. Live Preview

You can instantly preview your generated website to see how it looks and functions.

[View Live Preview of Your Website](https://your-generated-website.preview.link)

(Note: This is a placeholder link. In a real system, this would be a live, temporary URL.)

This preview link will remain active for [e.g., 7 days] to allow you ample time for review before you deploy it to your own domain.


4. Deployment Options

Once you are satisfied with your website, you can deploy it to make it live on the internet. Here are several common methods:

4.1. Option 1: Manual Hosting via FTP/SFTP

This is a traditional method suitable for most web hosting providers.

  1. Obtain Hosting Credentials: Log in to your web hosting control panel (e.g., cPanel, Plesk) and locate your FTP/SFTP username, password, and hostname.
  2. Connect via FTP/SFTP Client: Use an FTP client like FileZilla, Cyberduck, or WinSCP to connect to your hosting server.
  3. Navigate to Public Directory: Once connected, navigate to your public web directory. This is usually named public_html, www, htdocs, or a specific domain folder.
  4. Upload Files: Upload the entire contents of your downloaded .zip file (i.e., index.html, style.css, script.js, and any image/asset folders) into this public directory.
  5. Verify: Open your domain in a web browser (e.g., https://www.yourdomain.com) to confirm that your website is live.

4.2. Option 2: Cloud Hosting / Static Site Hosting (Recommended for Performance & Simplicity)

For static websites (HTML, CSS, JS), platforms like Netlify, Vercel, GitHub Pages, or AWS S3 offer excellent performance, scalability, and often a free tier.

A. Netlify / Vercel (Highly Recommended)

  1. Create Account: Sign up for a free account on [Netlify](https://www.netlify.com/) or [Vercel](https://vercel.com/).
  2. Connect Git Repository (Optional but Recommended): If you're using Git (e.g., GitHub, GitLab, Bitbucket), push your website files to a new repository. Then, connect your Git repository to Netlify/Vercel. They will automatically detect your static site and deploy it.
  3. Drag & Drop Deploy: Alternatively, drag and drop your entire website folder (containing index.html, style.css, script.js, etc.) directly onto the Netlify/Vercel dashboard.
  4. Custom Domain: Follow their instructions to connect your custom domain (e.g., www.yourdomain.com).
  5. Deployment: Your site will be live within minutes, often with a generated sub-domain (e.g., your-site.netlify.app).

B. GitHub Pages

  1. Create GitHub Repository: Create a new public repository on GitHub.
  2. Upload Files: Upload your website files (index.html, style.css, script.js) to the main branch of this repository.
  3. Enable GitHub Pages: Go to your repository's "Settings" tab, then navigate to "Pages" in the left sidebar.
  4. Select Branch: Choose the main branch as your source for GitHub Pages and click "Save".
  5. Access Site: Your website will be live at https://yourusername.github.io/your-repository-name/. You can also configure a custom domain.

**C. AWS S3 (for

website_code_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
\n\n\n```\n\n### 2.2. Styling (`style.css`)\n\nThis file contains all the cascading style sheets (CSS) to define the visual presentation of your website.\n\n```css\n/* General Body & Typography */\nbody {\n font-family: Arial, sans-serif;\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n line-height: 1.6;\n color: #333;\n}\n\n/* Header & Navigation */\nheader {\n background: #333;\n color: #fff;\n padding: 1rem 0;\n position: sticky;\n top: 0;\n z-index: 1000;\n}\n\nnav {\n display: flex;\n justify-content: space-between;\n align-items: center;\n max-width: 1200px;\n margin: 0 auto;\n padding: 0 20px;\n}\n\n.logo {\n font-size: 1.5rem;\n font-weight: bold;\n}\n\nnav ul {\n list-style: none;\n margin: 0;\n padding: 0;\n display: flex;\n}\n\nnav ul li {\n margin-left: 20px;\n}\n\nnav ul li a {\n color: #fff;\n text-decoration: none;\n transition: color 0.3s ease;\n}\n\nnav ul li a:hover {\n color: #007bff;\n}\n\n/* Hero Section */\n.hero {\n background: url('https://via.placeholder.com/1500x800?text=Your+Hero+Image') no-repeat center center/cover;\n color: #fff;\n text-align: center;\n padding: 100px 20px;\n min-height: 500px;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n}\n\n.hero h1 {\n font-size: 3rem;\n margin-bottom: 20px;\n}\n\n.hero p {\n font-size: 1.2rem;\n max-width: 700px;\n margin-bottom: 30px;\n}\n\n/* General Sections */\n.section-content {\n max-width: 1200px;\n margin: 40px auto;\n padding: 20px;\n text-align: center;\n}\n\nh2 {\n font-size: 2.5rem;\n margin-bottom: 30px;\n color: #007bff;\n}\n\n/* Buttons */\n.btn {\n display: inline-block;\n background: #007bff;\n color: #fff;\n padding: 10px 20px;\n text-decoration: none;\n border-radius: 5px;\n transition: background 0.3s ease;\n}\n\n.btn:hover {\n background: #0056b3;\n}\n\n/* Service Grid */\n.service-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));\n gap: 30px;\n margin-top: 40px;\n}\n\n.service-item {\n background: #f4f4f4;\n padding: 30px;\n border-radius: 8px;\n box-shadow: 0 2px 5px rgba(0,0,0,0.1);\n text-align: left;\n}\n\n.service-item h3 {\n color: #333;\n margin-bottom: 15px;\n}\n\n/* Forms */\n#contact-form {\n display: flex;\n flex-direction: column;\n max-width: 600px;\n margin: 0 auto 30px auto;\n gap: 15px;\n}\n\n#contact-form input,\n#contact-form textarea {\n padding: 12px;\n border: 1px solid #ddd;\n border-radius: 5px;\n font-size: 1rem;\n}\n\n#contact-form button {\n padding: 12px 20px;\n border: none;\n border-radius: 5px;\n background: #007bff;\n color: #fff;\n font-size: 1.1rem;\n cursor: pointer;\n transition: background 0.3s ease;\n}\n\n#contact-form button:hover {\n background: #0056b3;\n}\n\n/* Footer */\nfooter {\n background: #333;\n color: #fff;\n text-align: center;\n padding: 30px 20px;\n margin-top: 50px;\n}\n\n.social-links a {\n color: #fff;\n margin: 0 10px;\n text-decoration: none;\n transition: color 0.3s ease;\n}\n\n.social-links a:hover {\n color: #007bff;\n}\n\n/* Responsive Design */\n@media (max-width: 768px) {\n nav {\n flex-direction: column;\n }\n nav ul {\n margin-top: 15px;\n }\n nav ul li {\n margin: 0 10px;\n }\n .hero h1 {\n font-size: 2.5rem;\n }\n h2 {\n font-size: 2rem;\n }\n}\n\n@media (max-width: 480px) {\n .hero h1 {\n font-size: 2rem;\n }\n .hero p {\n font-size: 1rem;\n }\n nav ul {\n flex-direction: column;\n align-items: center;\n }\n nav ul li {\n margin-bottom: 10px;\n }\n}\n```\n\n### 2.3. JavaScript Functionality (`script.js`)\n\nThis file contains any interactive elements or dynamic behaviors for your website.\n\n```javascript\ndocument.addEventListener('DOMContentLoaded', () => {\n // Smooth scrolling for navigation links\n document.querySelectorAll('nav a').forEach(anchor => {\n anchor.addEventListener('click', function (e) {\n e.preventDefault();\n\n document.querySelector(this.getAttribute('href')).scrollIntoView({\n behavior: 'smooth'\n });\n });\n });\n\n // Example: Basic form submission handling (client-side)\n const contactForm = document.getElementById('contact-form');\n if (contactForm) {\n contactForm.addEventListener('submit', function(e) {\n e.preventDefault(); // Prevent default form submission\n\n // In a real application, you would send this data to a server\n // using fetch() or XMLHttpRequest.\n console.log('Form submitted!');\n const name = this.querySelector('input[type=\"text\"]').value;\n const email = this.querySelector('input[type=\"email\"]').value;\n const message = this.querySelector('textarea').value;\n\n alert(`Thank you, ${name}! Your message has been received. We will contact you at ${email}.`);\n\n // Clear the form\n this.reset();\n });\n }\n\n // Add more interactive JavaScript here as needed\n // For example: image carousels, modals, dynamic content loading, etc.\n});\n```\n\n### 2.4. Download Your Code\n\nFor your convenience, you can download all generated files in a single `.zip` archive:\n\n**[Download Website Code (.zip)](https://example.com/download/your-website-code.zip)**\n*(Note: This is a placeholder link. In a real system, this would be a direct download.)*\n\n---\n\n## 3. Live Preview\n\nYou can instantly preview your generated website to see how it looks and functions.\n\n**[View Live Preview of Your Website](https://your-generated-website.preview.link)**\n*(Note: This is a placeholder link. In a real system, this would be a live, temporary URL.)*\n\nThis preview link will remain active for **[e.g., 7 days]** to allow you ample time for review before you deploy it to your own domain.\n\n---\n\n## 4. Deployment Options\n\nOnce you are satisfied with your website, you can deploy it to make it live on the internet. Here are several common methods:\n\n### 4.1. Option 1: Manual Hosting via FTP/SFTP\n\nThis is a traditional method suitable for most web hosting providers.\n\n1. **Obtain Hosting Credentials**: Log in to your web hosting control panel (e.g., cPanel, Plesk) and locate your FTP/SFTP username, password, and hostname.\n2. **Connect via FTP/SFTP Client**: Use an FTP client like FileZilla, Cyberduck, or WinSCP to connect to your hosting server.\n3. **Navigate to Public Directory**: Once connected, navigate to your public web directory. This is usually named `public_html`, `www`, `htdocs`, or a specific domain folder.\n4. **Upload Files**: Upload the entire contents of your downloaded `.zip` file (i.e., `index.html`, `style.css`, `script.js`, and any image/asset folders) into this public directory.\n5. **Verify**: Open your domain in a web browser (e.g., `https://www.yourdomain.com`) to confirm that your website is live.\n\n### 4.2. Option 2: Cloud Hosting / Static Site Hosting (Recommended for Performance & Simplicity)\n\nFor static websites (HTML, CSS, JS), platforms like Netlify, Vercel, GitHub Pages, or AWS S3 offer excellent performance, scalability, and often a free tier.\n\n#### **A. Netlify / Vercel (Highly Recommended)**\n\n1. **Create Account**: Sign up for a free account on [Netlify](https://www.netlify.com/) or [Vercel](https://vercel.com/).\n2. **Connect Git Repository (Optional but Recommended)**: If you're using Git (e.g., GitHub, GitLab, Bitbucket), push your website files to a new repository. Then, connect your Git repository to Netlify/Vercel. They will automatically detect your static site and deploy it.\n3. **Drag & Drop Deploy**: Alternatively, drag and drop your entire website folder (containing `index.html`, `style.css`, `script.js`, etc.) directly onto the Netlify/Vercel dashboard.\n4. **Custom Domain**: Follow their instructions to connect your custom domain (e.g., `www.yourdomain.com`).\n5. **Deployment**: Your site will be live within minutes, often with a generated sub-domain (e.g., `your-site.netlify.app`).\n\n#### **B. GitHub Pages**\n\n1. **Create GitHub Repository**: Create a new public repository on GitHub.\n2. **Upload Files**: Upload your website files (`index.html`, `style.css`, `script.js`) to the `main` branch of this repository.\n3. **Enable GitHub Pages**: Go to your repository's \"Settings\" tab, then navigate to \"Pages\" in the left sidebar.\n4. **Select Branch**: Choose the `main` branch as your source for GitHub Pages and click \"Save\".\n5. **Access Site**: Your website will be live at `https://yourusername.github.io/your-repository-name/`. You can also configure a custom domain.\n\n#### **C. AWS S3 (for";function phTab(btn,name){document.querySelectorAll(".ph-panel").forEach(function(el){el.classList.remove("active");});document.querySelectorAll(".ph-tab").forEach(function(el){el.classList.remove("active");el.classList.add("inactive");});var p=document.getElementById("panel-"+name);if(p)p.classList.add("active");btn.classList.remove("inactive");btn.classList.add("active");if(name==="preview"){var fr=document.getElementById("ph-preview-frame");if(fr&&!fr.dataset.loaded){if(_phIsHtml){fr.srcdoc=_phCode;}else{var vc=document.getElementById("panel-content");fr.srcdoc=vc?""+vc.innerHTML+"":"

No content

";}fr.dataset.loaded="1";}}}function phCopyCode(){navigator.clipboard.writeText(_phCode).then(function(){var b=document.getElementById("tab-code");if(b){var o=b.innerHTML;b.innerHTML=' Copied!';setTimeout(function(){b.innerHTML=o;},2000);}});}function phCopyAll(){var txt=_phAll;if(!txt){var vc=document.getElementById("panel-content");if(vc)txt=vc.innerText||vc.textContent||"";}navigator.clipboard.writeText(txt).then(function(){alert("Content copied to clipboard!");});}function phDownload(){var content=_phCode||_phAll;if(!content){var vc=document.getElementById("panel-content");if(vc)content=vc.innerText||vc.textContent||"";}if(!content){alert("No content to download.");return;}var fn=_phFname;if(!_phCode&&fn.endsWith(".txt"))fn=fn.replace(/\.txt$/,".md");var a=document.createElement("a");a.href="data:text/plain;charset=utf-8,"+encodeURIComponent(content);a.download=fn;a.click();}function phDownloadZip(){ var lbl=document.getElementById("ph-zip-lbl"); if(lbl)lbl.textContent="Preparing…"; /* ===== HELPERS ===== */ function cc(s){ return s.replace(/[_-s]+([a-z])/g,function(m,c){return c.toUpperCase();}) .replace(/^[a-z]/,function(m){return m.toUpperCase();}); } function pkgName(app){ return app.toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"")||"my_app"; } function slugTitle(app){ return app.replace(/_/g," "); } /* Generic code block extractor. Finds marker comments like: // lib/main.dart or # lib/main.dart or ## lib/main.dart and collects lines until the next marker. Also strips markdown fences (```lang ... ```) from each block. */ function extractFiles(txt, pathRe){ var files={}, cur=null, buf=[]; function flush(){ if(cur&&buf.length){ files[cur]=buf.join(" ").trim(); } } txt.split(" ").forEach(function(line){ var m=line.trim().match(pathRe); if(m){ flush(); cur=m[1]; buf=[]; return; } if(cur) buf.push(line); }); flush(); // Strip ```...``` fences from each file Object.keys(files).forEach(function(k){ files[k]=files[k].replace(/^```[a-z]* ?/,"").replace(/ ?```$/,"").trim(); }); return files; } /* General path extractor that covers most languages */ function extractCode(txt){ var re=/^(?://|#|##)s*((?:lib|src|test|tests|Sources?|app|components?|screens?|views?|hooks?|routes?|store|services?|models?|pages?)/[w/-.]+.w+|pubspec.yaml|Package.swift|angular.json|babel.config.(?:js|ts)|vite.config.(?:js|ts)|tsconfig.(?:json|app.json)|app.json|App.(?:tsx|jsx|vue|kt|swift)|MainActivity(?:.kt)?|ContentView.swift)/i; return extractFiles(txt, re); } /* Detect language from combined code+panel text */ function detectLang(code, panel){ var t=(code+" "+panel).toLowerCase(); if(t.indexOf("import 'package:flutter")>=0||t.indexOf('import "package:flutter')>=0) return "flutter"; if(t.indexOf("statelesswidget")>=0||t.indexOf("statefulwidget")>=0) return "flutter"; if((t.indexOf(".dart")>=0)&&(t.indexOf("pubspec")>=0||t.indexOf("flutter:")>=0)) return "flutter"; if(t.indexOf("react-native")>=0||t.indexOf("react_native")>=0) return "react-native"; if(t.indexOf("stylesheet.create")>=0||t.indexOf("view, text, touchableopacity")>=0) return "react-native"; if(t.indexOf("expo(")>=0||t.indexOf(""expo":")>=0||t.indexOf("from 'expo")>=0) return "react-native"; if(t.indexOf("import swiftui")>=0||t.indexOf("import uikit")>=0) return "swift"; if(t.indexOf(".swift")>=0&&(t.indexOf("func body")>=0||t.indexOf("@main")>=0||t.indexOf("var body: some view")>=0)) return "swift"; if(t.indexOf("import android.")>=0||t.indexOf("package com.example")>=0) return "kotlin"; if(t.indexOf("@composable")>=0||t.indexOf("fun mainactivity")>=0||(t.indexOf(".kt")>=0&&t.indexOf("androidx")>=0)) return "kotlin"; if(t.indexOf("@ngmodule")>=0||t.indexOf("@component")>=0) return "angular"; if(t.indexOf("angular.json")>=0||t.indexOf("from '@angular")>=0) return "angular"; if(t.indexOf(".vue")>=0||t.indexOf("