How to host a single HTML file so other people can use it
You have one self-contained HTML file from an AI tool and need it online for other people. Here are your real options, and why "hosting" usually means more than just serving a file.
AI tools love to hand you a single, self-contained HTML file. Everything’s in there (markup, styles, a bit of script), and it runs perfectly when you double-click it. The obvious next step is to “host it somewhere.” This post walks through how, and flags the thing that trips most people up: hosting the file is rarely the whole job.
The quick answer
To get a single HTML file online, you upload it to a static host and share the URL. Several do this well for free. But if other people need to sign in or the app needs to save what they enter, a plain static host won’t cut it. You’d have to add a backend yourself. For that case, host it on Backlit instead, which bundles sign-in and per-user storage with the file.
First, what “host it” really means
When you say “host this file so others can use it,” you usually mean one of two very different things:
- Just serve it. The app is self-contained and stateless: a calculator, a reference page, a static tool. Anyone with the link should see it. No login, nothing saved.
- Run it as a real app. People sign in, do things, and come back to find their data. A tracker, a form that collects responses, a planner shared across a household.
Static hosts are great at the first and silent about the second. Knowing which one you have decides where the file should live.
If you just need to serve it
Plenty of services will take a single HTML file and give you a URL, free:
- GitHub Pages: push the file to a repo, enable Pages. Great if you’re comfortable with Git.
- Netlify / Cloudflare Pages: drag-and-drop a folder or connect a repo; you get a URL in seconds.
- Vercel: similar, oriented around projects and frameworks.
Any of these will happily serve a static file to the world. If your app genuinely needs nothing but to be seen, pick one and you’re done.
The catch shows up the moment you want the second thing.
If people sign in or it saves data
This is where most shared apps actually land, and where a static host leaves you stranded. Serving the file is easy; the hard parts are the two things the file can’t do on its own:
- Who’s allowed in? You need sign-in and a list of permitted people. Static hosts don’t provide this.
- Where does the data go? Anything someone types needs to persist somewhere safe and separated per person. A static host has nowhere to put it.
On a static host you’d solve these by standing up an auth provider and a database and gluing them to your file with some server code. That’s a legitimate project, and completely out of proportion for a one-file app you built in a chat.
The shortcut: host where those come included
Backlit hosts the same single HTML file, but treats sign-in and storage as part of hosting rather than homework:
- Drop the file, get a link. No build step, no repo required, your assistant can publish it straight from the chat where you built it.
- Sign-in is built in. Magic link, Google, or Microsoft, gated to the emails or domain you choose. Private by default.
- Storage is built in. Each person gets their own isolated data; the app gets shared data too. Your HTML reads and writes it through
window.backlit.*with nothing to configure.
So the decision is simple. Pure static thing for everyone? Any static host is fine. A file that needs a door and a memory? Host it somewhere that includes them, so you’re not assembling a backend for a ten-minute app.
How to publish to Backlit
- Connect Backlit to Claude or ChatGPT as a connector (
https://mcp.backlit.run/mcp). - In the chat with your app, ask your assistant to “publish this to Backlit.”
- It deploys the file to a live address and hands you the link, with sign-in and storage already attached.
The one-line takeaway
“Host a single HTML file” sounds like one task, but it’s usually three: serve it, gate it, and remember its data. Static hosts do the first; Backlit does all three. Match the host to what your app actually needs, and the file gets off your machine without turning into a project. See how it works →
Built an app with Claude or ChatGPT? Get early access to Backlit and share it in seconds.