Move your static site to a CMS your team can actually edit

You hand-coded the site. Marketing keeps emailing you copy changes. Migrate to Astro + EmDash and let them ship without you.

From
$1,500
starting price
Ships in
2 weeks
from kickoff
Booking
Open
Q2 2026
Reply within
1 day
business hours

If your “CMS” is a Git PR and you have become the bottleneck for every copy change, this is the two-week engagement that gets you out of the loop. We do not redesign and we do not rewrite — your existing CSS comes with us, your URL structure stays put where possible, and your existing Hugo, Eleventy, Jekyll, or hand-coded HTML templates translate cleanly into Astro components and EmDash content types. Week one is the audit: every page template, every content source, every weird build step (Pug, Pandoc, sed scripts — we have seen them) gets documented and modeled. Week two is the port, content import from Markdown, HTML, or Notion, a zero-downtime DNS swap, and a 30-minute walkthrough so the team that owns content can edit through Claude, Codex, or whichever MCP client they already use. Fourteen days of post-launch support included. The site is the same speed, the same design, and a marketing edit no longer requires you to push to main. Fixed-price, starting at $1,500.

If you would rather skip the migration entirely and start fresh, the vibecoding marketing-site post walks through the greenfield variant. For an integration the EmDash ecosystem has not built yet, we cover that in a separate custom plugin engagement. After cutover, most clients keep us on a monthly retainer for the small asks the in-house team has not had time to schedule.

Who this is for

Built for the team that wants this solved.

  • Founders or agencies sitting on a hand-built HTML/Eleventy/Hugo site who got tired of being the bottleneck for every copy change.
  • Teams who chose static for performance and now need a CMS that does not undo it.
  • Anyone whose "CMS" is a Git PR.
What's included

7 things, in scope from day one.

  • 01 Audit of existing static site structure (pages, includes, asset pipeline).
  • 02 EmDash content-type modeling matched to your existing page templates.
  • 03 Astro port preserving your existing CSS / design system (we do not redesign during a migration).
  • 04 Content import from Markdown / HTML / Notion / wherever it lives.
  • 05 Cloudflare Pages deploy with zero-downtime DNS swap.
  • 06 One 30-minute MCP walkthrough (Claude, Codex, or your agent of choice) for the team that will own content.
  • 07 14 days of post-launch support.
Timeline

2 phases over 2 weeks, then you ship.

Week 1

Audit + content type design. Sign-off on the model before any code.

01
Week 2

Astro port + content move + cutover.

02
From $1,500

Investment

Starting price, fixed scope.

Final scope after intro call.

Starting at
$1,500
Final scope after intro call.
Timeline
2 weeks
from kickoff to handoff
Intro call
Free · 30 min
no obligation, no pitch deck
How we work

4 steps. No surprises.

— 01
Audit
We document every page template and content shape in your current site.
— 02
Plan
Content types, redirect map (if URLs change), training plan.
— 03
Migrate
Astro port + content import + DNS cutover.
— 04
Train
A short walkthrough — your team is editing on day one of the new site.
Tech stack

The tools we'll be using.

— 01
Astro 6 — your existing CSS comes with us; no rewrite.
— 02
EmDash CMS — typed content, MCP-native.
— 03
Cloudflare Pages — same speed, edge cache, custom-domain auto-provisioned.
FAQ

Frequently asked.

Will my site look the same?

Yes. Static migrations preserve your existing visual design exactly. If you want a redesign, that is a separate engagement.

What if my static site has weird build steps?

Tell us about them on the intro call. Most static-site oddities (custom Pug, Pandoc, sed scripts) translate cleanly to Astro components or content collections.

Can I keep deploying via Git like I do now?

Yes. Cloudflare Pages auto-deploys on push to main, same as Netlify or Vercel. You also gain a CMS for non-technical edits.

Do you handle the redirects?

Yes, when URLs change. We aim to keep your URLs identical so redirects are not needed.

Ready to talk?

30 minutes, no obligation. We'll either tell you it makes sense — or that it doesn't.