Meta-Recipe

Recipe #0: Building the Cookbook in Public

Result:

A running Astro + MDX site, scaffolded and content-ready, in one sitting.

Problem

Most thought-leadership sites are opinions about a skill, not evidence of it. If the pitch is “I can rank in AI answers” or “I can ship AI systems,” the site itself should be the proof — built with the same tools it writes about, and fast/structured enough to actually perform at what it claims.

Pattern

The stack, chosen for cost and credibility rather than novelty:

  • Astro + MDX for content — static by default, fast, and each recipe is a portable, copy-pasteable .mdx file with typed frontmatter (title, pillar, result, dates) validated by a content collection schema.
  • Cloudflare Pages for hosting — free tier, automatic builds on push, PR preview URLs, managed DNS for the domain.
  • GitHub as the repo and lightweight CMS — every recipe is a pull request.

Total cost: about $10/year, for the domain alone.

Build sequence:

  1. Buy the domain at Cloudflare (keeps domain + DNS + hosting in one dashboard).
  2. Scaffold an Astro site with the MDX and sitemap integrations.
  3. Define a recipes content collection with a schema that enforces the problem → pattern → result → variations structure at the type level.
  4. Push to GitHub, connect the repo to Cloudflare Pages, point the custom domain at it.
  5. Bake in AEO from the first commit: semantic HTML, per-page structured data (JSON-LD), canonical URLs, a sitemap, and a real About/Work-with-me page — not retrofitted later.

Real result

The scaffold above was stood up end-to-end in one session: Node/npm installed, Astro + MDX + sitemap wired up, content collection schema defined, base layout with SEO/JSON-LD, recipe layout enforcing the four-part structure, and this recipe itself as the first published entry.

Variations

  • Swap Cloudflare Pages for Vercel or Netlify if you want a different free-tier tradeoff — the Astro output doesn’t change.
  • If you don’t need a CMS UI, MDX-in-git is the simplest option; if non-technical contributors need to publish, layer a headless CMS (e.g. Tina, Sanity) on top of the same content collection schema instead of migrating away from it.
  • The content collection schema is the actual lever: change pillar enum values or add fields (e.g. coAuthor, codeRepo) and every page that renders recipes picks it up automatically.

Nathaniel Stich writes Exit Velocities — recipes drawn from AI/growth systems actually shipped in production, not opinion pieces.

About the author