listsof30 production

Lists of 30: The Book Series Hub

One home for the five-book Lists of 30 arc: a series timeline, per-book chapters and buy links, and the 30 launch assets tracked in the open.

AstroTypeScriptCSS Design TokensCloudflare Pages
The series hub: each book, its formats, and where it can be bought.
The series hub: each book, its formats, and where it can be bought.
The current book on a phone, with the preorder one tap away.
The current book on a phone, with the preorder one tap away.
Four books so far, each with its chapters, formats and shop.
Four books so far, each with its chapters, formats and shop.

The books were scattered. Two published titles lived on separate Amazon pages, a third was a preorder with no home, and two more existed only as promises. The one canonical books page was a Substack post that could hold email but not a catalog. If you wanted the whole story, there wasn’t a page to send you to.

What It Is

books.listsof30.com is the one-stop shop for the entire series. The homepage opens on the next book, then steps back to show the whole arc: a vertical timeline of five books, one per decade of a life, from the 20s to a capstone that is deliberately still a promise. Below it, every book has its own page built from data, with the full chapter list, buy buttons for each format, and an editions row for the signed copies and the NFT edition.

A second page, /assets, tracks the thirty things being built to launch book three, grouped from foundation to publisher endgame with a live status on each. It is the kind of page an acquisition editor screenshots, so it is built to be screenshotted.

The Reframe

Earlier drafts called the third book “the third and final,” a triptych closing. The catalog told a bigger story: five books, one per decade, a life on a publishing schedule. That correction is not cosmetic. It is the difference between a project that ends and one that compounds, and the whole site is built around the longer arc. The framing lives in one constant so it can never drift.

The Discipline

Every link lives in one config file, and copy decisions live in one spec. A link that is not live yet renders a “coming soon” state instead of a dead end, so nothing on the page lies about where it goes. Facts that were not locked, an unwritten chapter list, an unpicked start year, stay on the page as visible bracketed placeholders rather than invented filler. Building in public means showing the seams.

It is static, with zero client JavaScript. The collapsible chapter lists use the browser’s own disclosure elements, not a framework. The design is the book brand’s own system, terracotta on warm paper, borders instead of shadows, the number thirty carried as a motif rather than decoration.

Status

Live on Cloudflare Pages at books.listsof30.com. The site was a greenfield build with no prior codebase, shipped one commit per section against a written spec, then deployed. Filling a placeholder is a one-line edit to the config or the spec, then a redeploy.

Stack

Astro in static mode, TypeScript for the book and asset data, and a hand-authored CSS token system mirrored from the brand’s canonical design files. Hosted on Cloudflare Pages. No backend, no database, no accounts. The data is the site.

Development timeline

2 logged updates on 3 Aug 2026.

  1. Lineage opened retroactivelydocs

    This file was created after the site shipped, not alongside it. Every entry below this line is contemporaneous.

  2. Site-anatomy exportfeature

    Read-only export: prd/lineage/roadmap plus the project page source. No vault content changed except this lineage entry and the creation of this file.

Written from this project's decision log as work happened, not afterwards. See every project →