Open source · MIT · $0/month forever

Your site. Click. Edit. Live.

Kiln turns any static site into one its owner can edit — right on the page. No database, no servers, no $25/month page builder. GitHub is the backend. Free hosting is the host. The site is the CMS.

The demo is a real site editing itself. Every change you see is a Git commit.

Click the text on your page Type the change Publish → a Git commit Live in ~1 minute ✓
What you get

Everything a small site actually needs

Not a page builder. Not a dashboard with 400 settings. Just the editing layer your site is missing — designed so an owner can't accidentally break the design.

✏️

True on-page editing

Click any text and type. Bold, italics, links, lists, quotes, headings — plus the site's own styles offered as a palette, so typography stays designed.

🖼️

Images & files

Click a photo to replace it (auto-resized), drop images into articles, attach PDFs and documents to any link. Everything versioned in Git.

📰

Blog & new pages

"+ New post" creates the page and the listing card as one atomic change — no build pipeline. New standalone pages from your own template.

🧱

Repeatable blocks

Cards, galleries, document lists: duplicate, reorder, and remove blocks with one click — without ever touching the layout.

🧭

Site-wide menu editing

Add, rename, and reorder navigation once — Kiln updates every page of the site in a single commit.

🔒

Members-only areas

Gate /members/ pages and files (yes, PDFs too) at the edge. Invite people for 1–360 days. No database, no per-seat pricing.

🔑

Google sign-in

Add someone's Gmail address and a role — they sign in with Google. Editors don't need GitHub accounts; members just click and they're in.

🕘

Full history, built in

Every publish is a Git commit. Browse a page's timeline and restore any previous version with one click. Nothing is ever lost.

🪶

Invisible to visitors

Visitors load 6 KB. The editor only loads for signed-in people — summoned by visiting yoursite.com/#edit. No admin bar haunting your design.

The 2026 problem

You vibe-coded a site. Now what?

Claude, v0, Lovable, and Bolt generate beautiful static sites and push them to GitHub — and then every text change means re-prompting an AI or editing HTML. Kiln is the missing edit layer: paste KILN_PROMPT.md into your AI tool and it wires your site for click-to-edit. Hand the site to your client. They edit. You're done.

Get the AI prompt →
The honest comparison

Why is this free when everything else isn't?

Because the expensive parts — databases, render servers, asset pipelines — aren't needed. Your repo stores content. Your host serves files. Kiln just connects your clicks to commits.

Edit on the pageWorks with any HTMLBackend to maintainPrice
KilnYesYesNone — GitHub$0, open source
WordPressPartlyNo — PHP + themesServer + DB + patches$5–25+/mo hosting
Squarespace / WebflowYesNo — their platform$16–25+/mo
CloudCannonYesSSGs$45+/mo
Decap / SveltiaNo — form dashboardYesNone — GitFree
TinaCMSReact onlyNoCloud or DBFree ≤ 2 users
Setup

Three pieces. Ten minutes. Zero bills.

Host your site free on Cloudflare Pages

Push your static site to GitHub, connect it to Cloudflare Pages (free tier allows commercial sites — unlike Vercel's). Every commit auto-deploys.

Deploy Kiln's tiny auth worker

One wrangler deploy, then open /setup and press one button — it registers your GitHub App and captures the credentials itself. You never copy a secret.

Annotate your HTML

Add data-cms to anything editable and two script tags at the bottom — or paste KILN_PROMPT.md into your AI and let it do this part. Then visit yoursite.com/#edit and sign in.

Full step-by-step setup guide → or run npx github:erikkurtu/kiln — the wizard does it with you

Who does what

Owners set up once. Everyone else just signs in.

🧑‍🔧

You (the site owner) — once, ~10 min

A free GitHub account (your content lives in YOUR repo), a free Cloudflare account (hosting), run the setup wizard, and click three confirmation buttons when it asks. That's the entire footprint. Day to day you just visit yoursite.com/kiln.

✍️

Your editors — zero setup

You add their Gmail under People & access (or send a one-time link). They visit the site, sign in with Google, and edit. No GitHub, no Cloudflare, no accounts to create, nothing to install — ever.

👥

Your members — zero setup

Same: added by email or sent a link, they sign in and the members-only pages and documents unlock for however many days you chose (1–360).

Requirements, in full: a static HTML site (hand-made or AI-made), a free GitHub account, a free Cloudflare account. There is no fourth thing.

Questions

The fine print, plainly

Is it really free? What's the catch?

The software is MIT open source. GitHub repos are free. Cloudflare Pages' free tier (unlimited static bandwidth, commercial use allowed) hosts the site, and a free-tier Cloudflare Worker handles sign-in. The "catch" is that you self-host those two free things — the setup guide walks you through it once, ~10 minutes.

Do my editors need GitHub accounts?

No. The site owner uses GitHub (it's their repo). Everyone else signs in with Google — you add their email and a role. There are also one-time invite links for people without Google. Editors' changes are committed on their behalf, attributed by name.

Can editors break my design?

That's the core design goal: editors change content, not layout. Text, images, links, list items, menu entries — yes. Dragging boxes around, resizing things, changing fonts arbitrarily — deliberately not. Styles come from a palette you define in CSS.

What about my existing WordPress / Squarespace site?

Export or rebuild it as static HTML (an AI tool does this well), push to GitHub, and point Kiln at it. If it's currently costing you monthly, that bill goes to zero.

Where does my content live? Can I leave?

In your own GitHub repository, as plain HTML files with full version history. "Leaving Kiln" means deleting two script tags. There is no export, because nothing was ever imported.

What does a published edit look like?

A Git commit: "Edit index.html: hero_headline (via Kiln)", authored by the person who made it. Your site's history reads like a changelog, because it is one.