Lossless Changelog
component

One-pagers for every Strategy deck — viewable and downloadable from the Strategies menu

Each of the six Strategy decks now ships a one-pager: a self-contained, print-ready brief that a funder can read in sixty seconds. A new 1-Pager pill appears at the top-right of every strategy card on /strategies — click it, read the brief in-browser, and download the PDF in one step.

Michael StatonMusic Editoraugmented with Claude Code on Claude Sonnet 4.6

One-pagers: the sixty-second version of every strategy

Why Care?

A full strategy deck is the right tool for a forty-minute conversation. A one-pager is the right tool for everything else — the cold email attachment, the folder a funder's program officer prints before a committee meeting, the leave-behind after a partner call.

All six strategy decks now have both. The Strategies menu surfaces the one-pager directly from the card — no hunting through a drive or asking someone to forward the PDF.

What's New?

  • 1-Pager pill on every strategy card — a small, teal-outlined badge sits at the top-right of each card on /strategies, next to the Draft status chip. Clicking it navigates to the one-pager wrapper; clicking anywhere else on the card still opens the full deck.

  • Wrapper page at /one-pager/[deck]/ — a clean full-height view with a dark topbar showing a back-link to Strategies, the deck title, and an orange Download PDF button. The one-pager HTML renders in an iframe below.

  • Six one-pagers published — Rural Income, Literacy & Numeracy, NCAD Forge, Agent Workflow Maxxing, Reverse Engineer Available Funding, and Frontier Job Demand. Each ships as both a styled HTML brief and a PDF.

  • onePager flag in the deck registry — decks.ts now carries onePager?: boolean on each deck. collections.ts resolves it into onePagerHref on the CollectionDeck type, keeping the menu component declarative rather than slug-matching by hand.

How it Works

The card layout uses the block-link overlay pattern: the card wrapper is a <div class="relative">, a transparent <a class="absolute inset-0"> covers the whole card for deck navigation, and the 1-Pager <a class="relative z-10"> sits above it. This avoids nesting <a> inside <a> (invalid HTML that breaks the grid layout) while keeping the whole card clickable.

The one-pager HTML files are self-contained — they carry their own styles and fonts — so they live in public/one-pagers/<slug>/index.html and are served as static assets. The wrapper page iframes them with an explicit index.html suffix (Astro's dev server does not resolve directory-index paths for public/ files without it).