headless.dev
← All posts

Welcome. You're standing on it.

There's a particular trick most product marketing sites pull. They show you screenshots of dashboards, snippets of code, maybe a Loom of someone else using the thing. You read about the product. The site itself was built in Webflow. This one isn't.

Every pixel you're looking at — the hero, the prompt box at the top, the steps, the features list you scrolled past, the very blog feed that delivered this post — is a working Wix Managed Headless project. Server-rendered by Astro, deployed by the Wix CLI, served from Wix's global CDN with a single command:
wix release
A quick tour through the moving parts.
The "Copy prompt" button on the homepage fires a tracked event the moment you press it — that event is already in our Wix Dashboard:
analytics.buttonClicked();
The /skill link in the top nav serves markdown from a single Astro Endpoint that fetches the canonical skill from dev.wix.com and caches it at the edge:
export const GET: APIRoute = async ({ params }) => {
  const upstream = await fetch(
    `https://dev.wix.com/skills/wix-headless/${path}.md`,
  );

  return new Response(await upstream.text(), {
    headers: { "Content-Type": "text/markdown; charset=utf-8" },
  });
};
The post you're reading right now was authored in the Wix Dashboard, pulled server-side via one call, and its body is rendered into this page by Wix's Ricos (Rich Content) viewer — the same editor it was typed in:
const { posts: list } = await posts.listPosts({
  fieldsets: ["URL", "METRICS"],
});
We mean it when we say: you're standing on it.

Two halves of one box

Wix Managed Headless is the recommended path for headless on Wix, and the pitch fits in a sentence: bring the frontend, Wix runs everything else.
The "everything else" comes in two halves, which the homepage shows you visually — a feature list near the bottom of the page with a yellow + glyph stamped between two sections:
  • Business APIs — Commerce, Bookings, CMS, Auth. The product surface. What your app does. Seamless communication with every API and Business Solution Wix has to offer with the simplicity of the Wix SDK.
  • Managed Platform — Hosting, Wix CLI, Astro framework, Analytics, SEO. The Managed experience. Helping you take your code further with built-in integrations like Sitemap, Analytics, Managed Login Pages and more with the addition of all the tools you (and your AI agent) need to build and ship faster.
Most "headless" offerings give you one or the other. Managed Headless ships them as a single unit, so the auth tokens, the build pipeline, the CDN, the dashboards, and the SDK calls all already know about each other. No glue code. No four separate vendor invoices. No Saturdays spent re-issuing a JWT signing key.

Flip the toggle

In the top right of every page there's a small < / > chip labeled X-Ray. Press it.
The page tints. Subtle scanlines. A handful of elements light up with dashed accent outlines and small capability tags floating in their corners — Wix Analytics on the copy button, Astro · Wix CLI · Wix Hosting on the wordmark, Wix Blog on the very feed you came from. Click any of them and a drawer slides in from the right with the actual snippet from this repo plus a direct link to the file on GitHub. No fake demo code. No "edited for clarity." The line that runs is the line you read.
It's a self-narrating site. The marketing copy and the implementation are the same artifact.

About this byline

You'll notice the byline on this post has two stacked avatars and a × Claude Code next to my name. That's not a bit.

Every commit on this repo carries a Co-Authored-By: Claude trailer; every meaningful refactor, every CSS pass, every drafted post — including this one — was written with Claude Code in the seat next to me. The site reflects how it was actually built, which is the only kind of honest a dev-tooling site is allowed to be.

So that's what this blog is for. A running build log. Notes on what we made, what we broke, what surprised us. The next few posts dig into specific pieces — how the X-Ray drawer works, why the prompt box mutates as you type, what flipping client:visible to client:only cost us on SSR — and each will live on a route that's itself inspectable.

If you want to start digging now, the X-Ray toggle is right there.

Otherwise, see you in post #2.