← Blog
2026-07-307 min read

How to publish the site you built with ChatGPT, Claude, Cursor, Lovable or v0

You asked an AI to build you a site and it worked. What none of them told you is what to do with what they handed over — and each hands over something different: a loose file, a folder with hundreds of files, a zip, or nothing you can download until you find the button.

This guide goes tool by tool: what you actually get, where the button is, and what to do with it. If your folder is already in hand, skip to the table.

There are only two kinds of delivery

Before the tools, the concept — everything else follows from it. What your AI handed you is one of two things:

  • A single .html file (sometimes with a .css beside it). That already is your site. A browser reads it as-is and it can be published untouched.
  • A whole projectpackage.json, a src/ folder, components. That is not a site yet: it is the recipe. It has to be built before the site exists.
One file index.html already a site or A project package.json src/ components/ has to be built
The two ways an AI hands you a site. The one on the left publishes as-is.

If that is new to you, the full explanation — what the dist folder is, why it is sometimes missing — is in the guide on putting a page online. Here it is enough to know which of the two you have.

What each tool gives you

ToolWhat you getHow to get it outNeeds building?
ChatGPTCode in the chat (or in Canvas)Copy and paste, or ask for a fileNo, if you ask for one index.html
ClaudeAn *artifact*: single-file HTML, or ReactThe artifact’s download button (.html / .jsx)No for .html; yes for React
CursorThe project, already on your diskNothing to export — you have itYes, almost always
LovableA full project (Vite + React)GitHub icon → *View Code* → *Download ZIP*, or connect GitHubYes
v0Components or a project (React / Next)••• menu → *Download ZIP*Yes
BoltA full project (runs on StackBlitz)Download the project as a zipYes

ChatGPT

It gives you the code inside the conversation, and with Canvas it edits it in place. There is no "download site" button, so the shortcut is asking properly: "give me everything in a single index.html, with the CSS and JavaScript included." Copy that block into a text file and save it exactly as index.html — not index.html.txt.

If your site has grown into several files, ask for them as a downloadable zip. And check one thing before publishing: if you ever asked it to connect a service, it may have left an API key written into the code. That must not reach the internet.

Claude

What you see in the right-hand panel is an *artifact*, and it downloads: the artifact’s button saves it as .html for a single-file page, or .jsx if it built you React components. If it is .html, you are done — that file is your site.

If it came as React (.jsx), you have half of it: a component is not a site until it is built. The simplest path is asking it to rewrite the whole thing as a single-file page; if you would rather keep React, you need the build step like any project.

Cursor

There is nothing to export here: the project is already on your disk, in the folder you opened. The question is not how to get it out but which part to publish — and that is the most repeated trap: publishing src/, the source code, instead of the built result.

Publish the whole project folder and let the platform build it, or build it yourself and publish what lands in dist (or build). If you never ran the build, that folder does not exist yet.

Lovable

It hands you a genuinely complete project — Vite with React, its dependencies, its config. To get it: the GitHub icon on your project, then View Code → Download ZIP. Unzip it and you have the folder.

If you will keep editing inside Lovable, connecting GitHub beats downloading: it stays in sync and every change you make there lands in the repository on its own. That is the route their own docs recommend, and it saves you pulling a fresh zip every time.

v0

Your project’s ••• menu has Download ZIP. What is inside depends on what you asked for: sometimes loose React components, sometimes a full Next.js project — either way it has to be built.

One warning that saves frustration: that button sometimes fails — stuck waiting for the sandbox, or a near-empty zip with just the README. It is a known, reported issue. If it happens, retry or connect the GitHub repository, which is the more reliable way out.

Bolt

It runs on StackBlitz, so what you see is a real project in the browser and it downloads as a complete zip. Same case as Lovable and v0: a project, not a site — it has to be built.

Now, publishing it

With the folder in hand, the rest is the same for all of them:

  1. Unzip it if you downloaded a zip. Leave the folder whole.
  2. Drag it into FluentOps. It works out what kind of project it is, without being told.
  3. If it needs building, it gets built. Nothing to install, no commands to run.
  4. Get your public URL, padlock included, ready to share.
FluentOps /my-site yourbiz.fluentops.app
The same folder your tool gave you, dragged in as-is.

It does not matter whether it came from Lovable or from an index.html ChatGPT pasted into the chat: same flow, and the site will not pause or expire afterwards.

What no tool checked for you

AI writes code that works, not code that is ready for the world. Two things are always left over, and nothing warns you:

  • What you are exposing. A .env file, an API key pasted into the code, the entire .git folder. FluentOps checks on every publish and cross-references your dependencies against known vulnerabilities.
  • What Google needs. Generated projects ship titled Vite App, with no sitemap.xml and no preview image when the link is shared. Seven checks run, and the missing pieces get generated.

The long version of both is in the comparison of the three ways to publish.

What comes next

  • Your own domain, with SSL, at no extra cost.
  • A form that works so people can reach you from the site.
  • The rest of your experiments: up to 21 sites on the free plan, and none of them switch off for lack of traffic.

And if your site still only opens on your own computer, start here.

Do not take it on faith — see for yourself, with the folder you already have.

Publish your site free →

Try it with your own project.

Drag your folder or paste your repo. We detect your stack, build it and hand you a public URL — free, no card, and your site is never paused.

Start free
Read next
How to put your website online (a beginner’s guide)