Hendzel is built like this.
A note about the publication you're reading.
This site is a personal publication, not a portfolio. Every top-level URL completes the sentence "Hendzel is ___." There are no conventional routes: no /blog, no /services, no /portfolio. The constraint is the brand.
Built by one person, in public, with the same restraint I try to apply to everything else I ship.
Type
- Source Serif 4 — Frank Grießhammer, Adobe. Used for every statement, header, and body paragraph on the site.
- IBM Plex Mono — Mike Abbink, IBM. Used for metadata, dates, status, and footer.
- No third typeface. Ever.
Color
- #FAFAF7 — warm off-white, background.
- #0E0E0E — ink, all primary text. Never pure black.
- #6E6E6A — muted, metadata and secondary text.
- #E10600 — F1 red, used only for live status dots and the requested path on /404.
Stack
- Static HTML, hand-written. No framework on the front-end.
- One shared styles.css across every page — 585 lines.
- Self-hosted Google Fonts via CDN. Two weights per family.
- One edge function: /404 renders the requested path into the heading.
Hosting
- Cloudflare for DNS and edge.
- Static deployment — hosting provider to be decided. Likely Cloudflare Pages or Vercel.
- No third-party analytics requiring cookie consent. Plausible or Fathom if anything.
Origin
Designed across May 2026 — first as ASCII wireframes, then as nine homepage variants explored in Claude's design tool, then as this. The full design system lives in design.md; the conversation that produced it is somewhere in a Claude transcript.
If you want to copy the system for your own site: take the URL constraint, the type pair, the color palette, and the ship-log primitive. Drop everything else. It's the structure that makes it work, not the chrome.
Last updated
2026 · 05 · 23