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.
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.
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.
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.
2 phases over 2 weeks, then you ship.
Audit + content type design. Sign-off on the model before any code.
Astro port + content move + cutover.
Investment
Starting price, fixed scope.
Final scope after intro call.
4 steps. No surprises.
The tools we'll be using.
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.
Not quite a fit? Try one of these.
Field notes from the work.
Ready to talk?
30 minutes, no obligation. We'll either tell you it makes sense — or that it doesn't.