# ZenML

- **Event:** [Built with Opus 4.6: a Claude Code hackathon](https://cerebralvalley.ai/e/claude-code-hackathon)
- **When:** Feb 10 at 12:00 PM – Feb 17 at 10:00 AM (EST)
- **Where:** Location TBA
- **Team:** [Alex Strick van Linschoten](https://cerebralvalley.ai/u/strickvl)
- **GitHub:** https://github.com/zenml-io/zenml-io-v2
- **Demo video:** https://www.youtube.com/watch?v=vd70OvKFbVc
- **Gallery:** https://cerebralvalley.ai/e/claude-code-hackathon/hackathon/gallery
- **Page:** https://cerebralvalley.ai/e/claude-code-hackathon/hackathon/gallery/67

ZenML's production website — 2,224 pages across 20 CMS collections — was stuck on Webflow. No version control, no CI/CD, expensive, and migrating manually would take months. I built the replacement during this hackathon using Claude Code with Opus 4.6.

It runs on Astro v5 + Cloudflare Pages: content exported via Webflow API, transformed to Markdown, validated against 20 Zod schemas, deployed as ~2,224 static pages in 33s. Seven Preact islands handle interactivity, including a faceted research hub with Pagefind search across 1,453 entries. Live at zenml-io-v2.pages.dev.

Opus handled the hard parts: it audited its own schema plan and caught 7 issues before I'd built a page. It noticed Webflow's HTML would break MDX parsing and switched all 1,904 files to standard Markdown unprompted. After hitting parity with the original it went further — redesigning the LLMOps database with features Webflow couldn't support, then fixing its own accessibility bugs.

120 commits, 6 phases, open source.

---

Markdown version of https://cerebralvalley.ai/e/claude-code-hackathon/hackathon/gallery/67. Site index for agents: https://cerebralvalley.ai/llms.txt · full text: https://cerebralvalley.ai/llms-full.txt
