Project engagement
Contentful and Sanity frontends your editors and engineers both trust
Your editors keep Contentful or Sanity. I build the frontend on top of it: live preview they will actually use, and a typed, server-rendered codebase your engineers can extend. Your team owns the content model. I own the code that renders it.
Nine years of frontend engineering, a headless-CMS-backed site I built and later migrated off, and client sites whose owners publish their own content without calling a developer.
Who this is for
- Teams leaving their current CMS for Contentful or Sanity who need the frontend built alongside the move
- Teams who already have a space and a filled-in content model, but nothing rendering it
- Marketing teams whose copy changes sit in an engineering backlog two weeks at a time
- Companies moving off WordPress or Webflow who want a frontend their engineers will actually maintain
What you get
- A frontend rendering your Contentful or Sanity content, server-rendered and typed end to end
- Typed content queries generated from the schema you already have, so a field rename becomes a compile error instead of a blank page in production
- Live preview wired up, so editors see unpublished drafts inside the real site instead of a preview mode that looks nothing like it
- Caching, webhook-driven revalidation, and deploys to Railway, Vercel, or Cloudflare in your accounts, with a preview URL on every branch
- SEO baseline: server-rendered metadata, Open Graph, canonical URLs, XML sitemap, and a redirect map when you are migrating
- A clear scope line: I build against the content model your team owns. If a field shape is fighting the frontend I will tell you exactly why, then build whatever you decide.
What an engagement looks like
CMS switch, frontend included
You are moving to Contentful or Sanity. Your team defines the content model in the new space; I build the site that renders it, plus the redirect map so your URLs and your rankings survive the move.
A space with no site
The content model is done and the space is full. What is missing is the frontend. I build it against your existing types, wire live preview, and hand back a repo your engineers can extend without archaeology.
Page builder escape
WordPress or Webflow to headless. Content gets migrated into Contentful or Sanity, the frontend gets rebuilt, and every old URL redirects to its new home.
How it works
- 01
Scope call (free)
30 minutes. We look at your space, your content model, and your deadline, and I tell you straight whether this is a fit. You leave with a written scope either way.
- 02
Schema walkthrough
Your team walks me through the content types you have already defined. I generate types from them and come back with a query plan plus a list of anything that will be awkward to render, before any code gets written.
- 03
Build with previews
The frontend comes together in preview deploys you can click through. Editors get live preview early, so they pressure-test publishing while there is still time to change things.
- 04
Launch and handoff
DNS, redirects, webhooks, analytics, and a walkthrough for both sides: editors on preview and publish, engineers on the repo.
Proof
Seth shows his value through a utter brilliance in the basics. In my experience, practitioners try to impress with the most modern tooling or whatever new gimmick on the market—not Seth. He has the know-how and expertise, and, yet, he has a grasp of what drives projects and what businesses need as opposed to the frills. We will use him for all of our branding and web presence needs for years to come.
Common questions
Do you do content modeling or content strategy?
No, and that is deliberate. Your team knows your content better than I will in six weeks, and content architecture is a different discipline from frontend engineering. I build against the model you own. If a field shape is going to make the frontend worse, I will say so with specifics and let you decide. If you need help designing the model itself, I will point you at people who do that for a living.
Why only Contentful and Sanity?
Depth beats breadth. Those two cover most of the headless market, both have a real preview story, and by building on only two I know their SDKs, their preview quirks, and their gotchas cold instead of relearning a CMS every engagement. If you are on Strapi, Prismic, Storyblok, or Payload, I will say so on the call rather than take the work.
Have you shipped Contentful or Sanity specifically?
Not for a client yet, and I would rather tell you that than dress it up. What I have shipped is the same architecture on a different headless CMS: a Keystone-backed site with GraphQL codegen, typed queries, draft and publish, and rich text rendering, which I ran in production and later migrated off when MDX became the better fit. I know both directions of that move. Contentful and Sanity are the two I have standardized on, and I am building public reference implementations of both.
What framework do you build in?
React Router 7 by default. It gives you server rendering, route-level data loading, and prerendering without the framework tax or the hosting lock-in, it runs on Railway, Vercel, Cloudflare, or a plain Docker container, and the data flow stays typed from your CMS schema down to the component props. If your team already runs Next.js or Astro, I build in that instead. The architecture I care about is the same either way: typed queries, server rendering, real preview. The framework is the part I am flexible on.
What about migrating our existing content?
Migration is part of the build when you need it: scripted extraction from the old system, a mapping into your new content types, and a redirect map so existing URLs and rankings carry over. I have done this end to end, including the unglamorous part where the old rich text does not map cleanly onto the new one. What I do not do is decide what the new content types should be.
How do you use AI in the build?
For speed, not for slop. Agentic tooling accelerates scaffolding, content migration, and testing, which is why I can quote weeks instead of months. Every line of code and copy gets reviewed by me before it ships.
Start the conversation
The fastest path is a free 30-minute scope call. Prefer to write it out? Use the form and I'll reply within one business day.