Projects

The Wire

live July 2026 Cloudflare Workers D1 KV TypeScript RFC 5545

Four publications: two RSS-based news digests, an events calendar built from Des Moines venues’ public iCal feeds, and a weekly original-analysis title.

The architectural constraint that shaped everything: no Anthropic API key anywhere in this project’s infrastructure. Rather than a cron-triggered Worker holding a metered key, generation runs as a session with a human in the loop that writes results directly into D1. The reader-facing pages, archive, and per-publication RSS feeds all key off one metadata module, so adding a publication is one entry rather than six edits.

Honest degradation, specifically

Every dynamic Wire page reads KV for a latest-edition pointer, then D1 for the edition itself. On a fetch failure it renders a labeled “temporarily unavailable” panel — never a 500, never a blank page. Editions past a staleness threshold say so on the page, and the threshold is per-publication, because a healthy weekly title should not be labeled stale after two days.

The iCal work

workers/wire/src/ical.ts is a hand-written RFC 5545 parser with windowing by event date, title deduplication, and a minimum lead time — unit-tested against fixtures shaped to each venue’s real output, then proven against live feed data before the first edition published.