How-to Guide

How to host a website by uploading a ZIP or folder

You already have the files — a folder from Cursor, a ZIP from Replit, or a dist build on your laptop. Here is how to put them on a live URL without GitHub: upload, publish free, then connect your domain when you are ready.

By Mian Bilal··Updated
8 min readNo GitHub neededFree 5 MB · Pro 45 MB

Under 2 min

Time to live URL

No

GitHub required

5→45 MB

Upload limits

ZIP or folder flowing into GeminiLaunch Quick Publish and a live website URL

Quick answer

To host a website from a ZIP or folder: make sure index.html is at the root (or upload your Vite dist folder), then drop the ZIP or folder into GeminiLaunch. Click Go Live for a free public URL. Upgrade to Pro ($15/mo) and add one DNS record for yourbrand.com. No GitHub required. Use paste when the site is still in chat; use upload when you already have files. Same publish → DNS idea as our Cursor custom domain guide and custom URL walkthrough.

Choose the right path

When ZIP/folder upload beats paste

Paste-and-publish is still the fastest path when ChatGPT, Claude, or Gemini gave you one complete page in the chat window. Upload wins when the site already lives on disk as files.

Choose ZIP or folder upload when:

You exported a multi-file project from Cursor, Claude Code, Replit, or a local IDE

The site includes images, fonts, CSS, and JS as separate files

You ran npm run build and have a dist or build folder ready to host

A Drop-style host (Netlify Drop, Cloudflare Drop, Tiiny) is what search results recommend — and you want an AI-friendly alternative with paste + upload

Key insight

Paste when the code is still in chat. Upload when you already have files. Both paths end on the same free subdomain — and the same Pro custom-domain upgrade.

Compare

ZIP and folder hosting options, compared

Honest look at the upload hosts people find in 2026 — including Drop products and ZIP-first static hosts.

PlatformMethodTimeAccountSize notesCustom domainBest for
GeminiLaunchZIP / folder upload + paste from AI chatUnder 2 minutesYesFree 5 MB · Pro 45 MBPro ($15/mo, up to 5)AI sites with files, images, or a built dist folder
Netlify DropFolder / ZIP / single HTML drag-and-drop2–5 minutesOften required to keepGenerous free tierVia NetlifyPeople already in the Netlify ecosystem
Cloudflare DropFolder / ZIP → temporary URL, then claimUnder 2 minutesClaim within ~60 min~25 MB class uploadsAfter claim (Cloudflare)Instant preview before creating an account
Vercel DropFile / folder / ZIP (can detect frameworks)2–5 minutesYesPer Vercel planVia VercelTeams staying inside Vercel
Tiiny.host / Static.appZIP-first drag-and-drop2–5 minutesYesPlan-basedPaid plansSimple static share links
Just Publish / DeployPagesFolder / ZIP / files for AI-built sitesUnder 2 minutesLow frictionVariesPaid / laterOne-off AI file drops

Step-by-step

From ZIP or folder to a live URL in 4 steps

Most people are live on a free subdomain in under two minutes. Connecting a custom domain adds a few minutes for DNS.

1

Prepare your site files

Your upload must include an index.html homepage. For a simple AI page, save the HTML (and any CSS, JS, or images) into one folder. For Vite, React, or similar projects, run npm run build first — then use the dist or build output folder, not the full source repo.

Tip: GeminiLaunch also accepts index.html inside a public/ folder and will treat that as the site root. Skip node_modules, .git, and .env files — they are not needed to host a static site.

2

ZIP the folder — or keep it as a folder

You can drag the folder itself into GeminiLaunch, or compress it to a .zip. Zip the folder that contains index.html at the top level. Avoid zipping a parent folder that only wraps another empty layer of directories.

Tip: macOS sometimes adds a __MACOSX folder inside ZIPs. GeminiLaunch skips it automatically. Still keep the archive under your plan limit: Free 5 MB, Pro and Scale 45 MB.

3

Upload in GeminiLaunch and go live

Open GeminiLaunch and choose Upload a folder or ZIP (or open Quick Publish and select the ZIP / Folder tab). Drop your .zip or folder, confirm it is under the size limit, and click Go Live. You get a public HTTPS URL on a free .geminilaunch.com subdomain — no GitHub, no CI, no server.

Tip: Already have the site as one HTML file in ChatGPT or Claude? Use the Code tab and paste instead. Upload when you have multiple files, images, fonts, or a built dist folder.

4

Share free — or connect your own domain

Your free subdomain works immediately for demos and sharing. When you want yourbrand.com, upgrade to GeminiLaunch Pro ($15/mo), add the domain in project settings, and create the DNS record GeminiLaunch shows at GoDaddy, Namecheap, Cloudflare, or your registrar. Free SSL is included automatically.

Tip: Pro includes up to 5 custom domains and raises uploads to 45 MB. Validate the free URL on mobile before you change DNS.

Four steps: prepare files, ZIP or folder, upload to GeminiLaunch, share live URL or custom domain

Avoid these

Common ZIP and folder upload mistakes

Missing index.html at the root

If the host cannot find a homepage, the upload fails. Put index.html at the top of the ZIP/folder (or inside public/). For React/Vite apps, upload the built dist or build folder — not only the src tree.

Uploading the source project instead of the build

A Vite or CRA source folder without a build step usually has no usable homepage for static hosting. Run the build, then upload dist/ or build/.

Hitting the Free 5 MB cap with images and fonts

Free uploads are limited to 5 MB per site. Compress images, remove unused assets, or upgrade to Pro for up to 45 MB. Paid plans also cap individual files at 10 MB and 500 files total.

Expecting the Code-tab SEO form on a ZIP upload

ZIP/folder sites use icons and markup from your files (for example a favicon link in index.html). The full SEO & social card form is on the Code paste path. Put title and Open Graph tags in your HTML when you upload a static package.

Be fair

When Drop hosts or Git is the right call

Other paths are better when:

  • You need a no-login preview for one hour and Cloudflare Drop already fits that workflow

  • Your team deploys from GitHub and wants preview URLs per branch

  • You already live in Netlify or Vercel and Drop is one click away

  • You need a backend, database, or server runtime — not a static upload

If you want AI paste and ZIP/folder upload in one place — free first, custom domain when ready — GeminiLaunch is the shorter path for most non-DevOps launches.

Related guide

Host a Cursor site on your domain

Paste or ZIP from Cursor, then connect yourbrand.com.

Read the guide

Related guide

GeminiLaunch vs Tiiny vs Static.app

Paste-from-chat + ZIP compared to ZIP-first hosts.

Read the guide

Related guide

Launch an AI site on a custom URL

DNS walkthrough after your free subdomain is live.

Read the guide

FAQ

Frequently asked questions

Common questions about hosting a website from a ZIP or folder upload.

How do I host a website by uploading a ZIP or folder?

Prepare a folder with index.html at the root (or a built dist/build folder), zip it or keep it as a folder, then upload it in GeminiLaunch under ZIP / Folder. Click Go Live for a free .geminilaunch.com URL. Upgrade to Pro ($15/mo) to connect yourbrand.com with one DNS record.

Do I need GitHub to upload a ZIP website?

No. ZIP and folder upload skip Git entirely. Use GitHub Pages or Vercel when you want repositories and CI — not when you only need a live link today.

What is the Free vs Pro upload size limit on GeminiLaunch?

Free accepts folder and ZIP uploads up to 5 MB per site. Pro and Scale accept up to 45 MB. Hard ceilings also include 10 MB per file and 500 files per publish.

Does my ZIP need an index.html?

Yes. GeminiLaunch looks for index.html at the site root (or inside public/). Without a homepage file, the upload is rejected with a clear error — including a hint to build Vite/React apps first.

When should I paste code instead of uploading a ZIP?

Paste when the site is still a single HTML or React block inside ChatGPT, Claude, Gemini, Cursor, or similar. Upload when you already have multiple files, images, fonts, or a built dist folder on your computer.

How is GeminiLaunch different from Netlify Drop or Cloudflare Drop?

Drop tools are strong at one-shot folder uploads. GeminiLaunch combines ZIP/folder upload with paste-from-chat for AI workflows, a durable free subdomain, and custom domains on Pro from the same dashboard. Cloudflare Drop starts without an account but needs a claim window to keep the site.

Can I upload a Vite or React build?

Yes. Run npm run build, then upload the dist or build output folder (or zip it). Do not upload node_modules. Heavy server frameworks still need a traditional host — GeminiLaunch is for static HTML and supported static React output.

Can I connect a custom domain after a ZIP upload?

Yes on Pro ($15/mo, up to 5 domains) or Scale (unlimited). Publish on the free subdomain first, then add DNS at your registrar. Free SSL is automatic.

Will visitors need an account to view my uploaded site?

No. Once published, anyone opens your public URL in a normal browser. They never need GeminiLaunch, ChatGPT, or an editor login.

Can I replace the files after publishing?

Yes on Pro and Scale: re-upload or paste updates and republish. Your URL (and custom domain) stays the same. Free-plan sites stay live as first published and cannot be edited afterward.

What files are skipped in a ZIP upload?

GeminiLaunch silently skips junk and secrets such as node_modules, .git, __MACOSX, .DS_Store, and .env files. Blocked executable or server script types are not hosted. Keep usable static assets: HTML, CSS, JS, images, fonts, and similar web files.

Where can I compare ZIP-first hosts for AI sites?

See GeminiLaunch vs Tiiny.host vs Static.app for ZIP-first hosts, and our best free hosting for AI websites guide for a wider platform comparison.

Like this guide? Make GeminiLaunch a preferred source.

Get our hosting and deployment guides surfaced first in your Google results, AI Overviews, and Top Stories.

Your ZIP deserves a live URL

Drop a folder or .zip with index.html into GeminiLaunch, publish free, then connect your own domain when you are ready. No credit card to start.

Explore features View pricing