How We Publish Website Updates in 5 Minutes Using Claude Code, GitHub, and Cloudflare
How We Publish Website Updates in 5 Minutes Using Claude Code, GitHub, and Cloudflare
Meta Description: Our website is a single HTML file in a Git repo. Claude Code edits it in conversation, Git commits it, Cloudflare Pages deploys it. Copy update to live in under 5 minutes — here’s the exact setup.
During a product session this week, we renamed our lead product, rewrote the hero copy, updated the ICP, changed the pricing, and added a new section — all while the conversation was still running. By the time we’d made the decisions, the website reflected them.
That’s not magic. It’s a deliberately simple setup that removes every layer of friction between “we decided something” and “the world sees it.”
Here’s exactly how it works.
The Stack
Three components. No CMS, no dashboard, no deploy button to find:
| Component | What it does |
|---|---|
| Single HTML file | The entire website. One file, everything in it. |
| GitHub (private repo) | Source of truth. Every change is a commit. |
| Cloudflare Pages | Watches the repo. Auto-deploys on every push to main. |
That’s it. No Vercel, no Netlify, no WordPress, no Squarespace. A file, a repo, and a CDN that watches the repo.
Why a Single HTML File
The website for a solo builder at this stage doesn’t need a framework. It needs to be fast, readable, and changeable.
A single HTML file means:
- Claude Code can read the entire site in one tool call
- Edits are surgical — find the exact string, replace it
- No build step, no dependencies, no
npm installbefore you can change a headline - Cloudflare Pages deploys it in under 60 seconds
The tradeoff: it doesn’t scale to a 50-page site. That’s fine. When you need 50 pages, you’ll know. Until then, the single-file approach is faster to work with than any framework.
The Claude Code Workflow
When a copy change needs to happen, the workflow is:
- Read the file — Claude Code loads the HTML, knows the full context
- Make the edit — surgical string replacement, not a full rewrite
- Verify — grep for any stale references (old product names, old pricing)
- Commit — git add, git commit with a clear message
- Push — git push origin main
Cloudflare Pages picks up the push automatically. The site is live in under 2 minutes from push.
In today’s session, we made six separate changes to the website:
- Hero H1 and tagline — product name and ICP copy
- Nav CTA — from AI-1001 interest email to Zero to Shipped waitlist
- Training section — replaced entire AI-1001 card with Zero to Shipped workshop card
- Labs section — updated cross-link
- Pricing bullet — $997 solo, +$497 bring a friend
- Cohort size — “community of 10” → “small community limited to 15”
Each was a separate commit. Total time from first change to pushed: under 15 minutes, while the product conversation was still running in the same session.
The Cloudflare Pages Setup
Setup is a one-time 10-minute job:
- Connect your GitHub repo to Cloudflare Pages
- Set the build command to nothing (static HTML, no build needed)
- Set the output directory to
/or wherever your HTML file lives - Point your domain’s DNS to Cloudflare Pages
After that, every push to main auto-deploys. No webhook, no manual trigger, no deploy button. Push and it’s live.
Cloudflare Pages is free for this use case. The CDN is global. The deploy time is under 2 minutes. There’s no reason to pay for anything more complex at this stage.
Why This Matters More Than the Tech
The real value isn’t the specific tools. It’s the principle: the gap between decision and deployment should be minutes, not days.
Most website setups introduce friction:
- CMS dashboard you have to log into
- Staging environment to push through
- Designer or developer to make the change
- Review cycle before it goes live
Each layer adds time. Time means the decision sits in a Slack message or a doc somewhere while the website says the wrong thing.
When your website is a file in a repo that Claude Code can edit directly, the friction disappears. The conversation produces the decision. The decision produces the commit. The commit produces the deployment.
You don’t have to remember to update the website later. Later doesn’t exist.
What This Enables
Beyond the obvious speed benefit, this setup creates a second-order advantage: you can use your website as a living document.
In one session today, the website went from promoting a product called “AI Builder Sprint” aimed at “aspiring founders” to promoting “Zero to Shipped” aimed at anyone who wants AI working for them. That’s a meaningful positioning shift. It happened in real time, not in a future sprint.
When your copy is always current, you’re always selling the real thing — not the thing you decided three weeks ago.
The Setup for Your Own Site
If you want to replicate this:
- Simplify your website to a single HTML file if it isn’t already. If you have a simple marketing site with a few sections, this is almost certainly possible.
- Put it in a Git repo — GitHub, GitLab, whatever. The key is that every change is tracked.
- Connect to Cloudflare Pages — free, fast, takes 10 minutes to set up.
- Use Claude Code in your repo — when you’re in a session and a copy change comes up, make it in the session. Don’t defer it.
The payoff: your website stays current with your thinking, every change is versioned, and the time from decision to live is measured in minutes not days.
The alienbraintrust.ai website is a single HTML file at 02-Website/index.html in this repo.
Every change in this post was made exactly as described — in conversation, committed, and deployed.
Comments