A free, open-source guide
You built something.
Now ship it.
It works. You're proud of it. And it has been sitting on your laptop for three weeks, because the gap between “it works” and “other people can use it” is full of words nobody explained.
Haven't built anything yet? Start at Stage 0 — get an AI coding agent, then work out what to build.
Pick one
Three ways to do this
None of them is the wrong answer. Pick by how much you want to understand versus how fast you want a URL — all three end with your domain, HTTPS, a public repo and deploys on push.
Hand it over
Install the skill, paste a paragraph, approve the domain purchase. It does the rest.
claude --dangerously-skip-permissions
If you want it live tonight.
Step by step · ~45 min
Skill, one stage at a time
The same skill does the fiddly mechanics, but stops and explains before each stage.
claude
Most people should take this one.
By hand · 20–90 min
Type it yourself
Every command, with what it does and what going wrong looks like. No agent required.
Track A · Cloudflare | Track B · AWS
If you learn by doing.
The skill is a markdown file and six short shell scripts — read it before you install it, which is a reasonable instinct.
What you'll have at the end
- A real domain you own, like
yourthing.com - Your project live on it, over HTTPS
- The code on GitHub, public, with a licence and a README
- Automatic deploys — change a file, push, the live site updates
- A bill of roughly £10–20 a year, almost all of it the domain
You don't need to be a developer. You need a laptop, a card for the domain, and about an hour.
The idea worth ten minutes
Four layers, four separate companies
Almost every “I'm stuck” moment is not knowing which of these is broken. They're independent — so no choice you make today is a trap.
Buying your domain at one company does not tie your hosting to it. Don't like your host? Change layer 3, keep the name.
What did you build?
The guide starts by working out which of these you have, because it changes everything after it.
A static site
HTML, CSS and JS — or anything with a build step that spits out a folder. Nothing has to stay running.
Read this bit → Shape 2 · ~45 minPlus a bit of backend
A form that saves something, or an API key you can't put in the browser. A function runs per request, then stops.
Read this bit → Shape 3 · be honestSomething that keeps running
A Python server, a bot, a database you manage. Neither track's free tier fits — so the guide says so, and points you somewhere that does.
Read the honest note →Two tracks. Pick one, follow it end to end.
No single right answer, so you get two complete ones. You never have to mix them.
| Track A — Cloudflare | Track B — AWS | |
|---|---|---|
| Best when | It's your first deploy | You already use AWS, or need it for work |
| Time | ~20 min static, ~45 with a backend | ~90 min |
| Standing cost | The domain | Domain + ~$0.50/mo for the DNS zone |
| Bill shock | Low — free tiers stop rather than bill | Real — set a budget alarm before you start |
| Teaches you | The modern default | The stack most companies actually run |
This site is hosted by following Track B, start to finish, on a domain registered the same morning. Four bugs in the guide were found and fixed that way — including one where GitHub sends an OIDC subject claim that no published example matches.
Whichever you picked
You'll need these three things first
You create the accounts. You authorise the tools. Then you hand the work to Claude Code and answer its questions. About 30 minutes, most of it waiting for DNS.
Set up your machine
A terminal and a handful of tools. On Windows this means installing WSL first — the guide walks through it, because everything here is written in bash and PowerShell is not the same thing.
# macOS
brew install git gh jq awscli
# Windows: open PowerShell as Administrator, then reboot
wsl --install
Create the accounts
GitHub for everyone. Then Cloudflare or AWS depending on your track — and Anthropic only if your project calls Claude. Turn on two-factor while you're there, and on AWS set the budget alarm before you build anything.
Hand it to Claude
Authorise each tool once — you never paste a key into the chat, because the tools already hold it:
gh auth login # GitHub
aws configure # Track B (AWS)
npx --yes wrangler@latest login # Track A (Cloudflare)
Then, in your project folder, start Claude Code and say:
Prefer to type it yourself? Both tracks list every command with an explanation of what it does — Cloudflare or AWS. New to any of the words on this page? Every term is explained here.
The other half
A skill, so you stop memorising commands
Install it once, and Claude Code knows how your deploy works.
git clone https://github.com/jhammant/ship-what-you-built.git
mkdir -p ~/.claude/skills
cp -r ship-what-you-built/skill ~/.claude/skills/first-site
Then you just say what you want:
Thirty-five seconds
What this actually looks like
Made with Remotion — written as code, so it can be regenerated whenever the thing changes. The guide shows you how.
The point of all this
Then add yours to the showcase
When your thing is live, put it on the list. One row, two minutes, done entirely in the browser — no terminal.
For a lot of people it's the first pull request they've ever made, which means their first open-source contribution is to a project about making your first open-source contribution. That's a pleasing shape, and it's deliberate.