← murphyslawai.com
FREE GUIDE

Dead domain → link in bio

Linktree Pro is $24/mo. I pay $0.
The exact prompt, the free hosting, and the DNS bit everyone gets stuck on. No terminal, no coding, about 15 minutes.

I did this with a domain from a blog I killed. You don't need a domain at all — that part is optional and marked as such.

What you end up with

A one-page site with your links on it, that you own, on hosting that is free forever. No monthly fee, no "upgrade to remove branding", no company changing its pricing on you.

What you need

No credit card anywhere in this guide.

1 — Have Claude build the page

Open claude.ai and paste this. Fill in the brackets with your own stuff.

Build me a link-in-bio page as ONE self-contained HTML file.

About me: [one sentence — who you are and what you make]

Links, in this order:
1. [Label] — [URL] — [one line describing it]
2. [Label] — [URL] — [one line describing it]
3. [Label] — [URL] — [one line describing it]

Style: [the vibe — e.g. dark, bold condensed headings, one accent color]
Mobile-first — almost everyone opens this on a phone.

Rules:
- Everything inline. No external fonts, scripts, images or CDN links.
- Big tap targets, high contrast, no horizontal scrolling.
- Include a <title> and a meta description.

Output only the HTML.

Claude gives you a wall of code. Don't read it.

Don't like how it looks? Don't rewrite the prompt — just say what's wrong: make the cards bigger · darker background · the heading font is too thin · add my email at the bottom. Three rounds of that beats one perfect prompt.

Save it as a file

  1. Click the copy button at the top of the code block
  2. Open Notepad (Windows) or TextEdit (Mac), paste it
  3. Save it as index.html — the name matters, don't rename it
    • TextEdit on Mac: Format → Make Plain Text first, or it saves wrong
  4. Double-click the file to preview it in your browser

Looks right? That file is your whole website.

2 — Put it online, free

No terminal needed. All of this is in the browser.

Create the place it lives

  1. Go to github.com/new
  2. Repository name: links
  3. Choose Public — Pages only works on public repos with a free account
  4. Leave every checkbox unticked (no README, no .gitignore, no license)
  5. Create repository

Upload your file

  1. On the empty repo page, click uploading an existing file
  2. Drag in your index.html
  3. Commit changes

Turn on the hosting

  1. In the repo → Settings
  2. Sidebar → Pages
  3. Source: Deploy from a branch
  4. Branch main, folder / (root)Save

Wait about a minute, refresh, and GitHub shows your live address: https://YOURNAME.github.io/links

That's a working link in bio. You can stop here — it's free forever. Step 3 only changes what the address looks like.

3 — Optional: your own domain

Skip this if you don't own one.

Tell GitHub the domain

Repo → SettingsPagesCustom domain → type it → Save. GitHub adds a file called CNAME to your repo. That's supposed to happen.

Point the domain at GitHub

Go to wherever you bought the domain, find the DNS records screen, and add these five:

TypeHostValue
A@185.199.108.153
A@185.199.109.153
A@185.199.110.153
A@185.199.111.153
CNAMEwwwYOURNAME.github.io.

Delete any existing A record or parking/redirect record for @ first, or they'll fight each other. Then wait — ten minutes is normal, a few hours happens.

Force HTTPS

Back in Settings → Pages, tick Enforce HTTPS. Greyed out? The certificate isn't ready. Come back in an hour — it appears on its own.

When it goes wrong

"Your connection is not private" / certificate warning

The most common one, and almost never a real problem. Your router cached the domain's old address, so you're still landing on the previous server — whose certificate doesn't cover your domain. The rest of the world already sees the new site.

Check it on mobile data with Wi-Fi off. If it loads there, you're fine. ipconfig /flushdns usually won't help — the stale copy is in the router, not your PC. Restart the router or wait.

404 after enabling Pages

The file has to be named exactly index.html and sit at the top level of the repo, not inside a folder.

Changes don't show up

GitHub rebuilds in about a minute, then your browser caches it. Hard refresh: Ctrl+Shift+R (Cmd+Shift+R on Mac).

Custom domain box keeps emptying itself

DNS isn't pointing at GitHub yet. Finish the DNS step, wait, then set it again.

Why bother

Rented link pages take a cut of your attention: their branding on your page, their upsell to your visitors, their pricing decisions on your budget.

The page you came from runs on a domain from a blog that failed — Google rejected it, the hosting lapsed, I killed the project. The domain had ten months left on it. Now it's the front door of everything I make.

If it can go wrong, it will. Sometimes it leaves you a part you can use.