Skip to content

Print edition: plan + press route + A5 PDF export (ISSUE 375 debut)#46

Draft
isaacsight wants to merge 1 commit into
mainfrom
claude/whats-new-WkBwh
Draft

Print edition: plan + press route + A5 PDF export (ISSUE 375 debut)#46
isaacsight wants to merge 1 commit into
mainfrom
claude/whats-new-WkBwh

Conversation

@isaacsight
Copy link
Copy Markdown
Owner

Give the magazine a body

The publication was print-native from the first commit — POPEYE spine, the stock / monument / colophon / postmark vocabulary, one tomato spot color — but had never existed as a physical object. This is the first move to put kernel.chat on paper, carrying ISSUE 392's thesis (the hand survives) into the object itself.

What's here

1. The plan — docs/print-edition.md

  • Debut object: ISSUE 375 — THE SIX BORROWS (cream anchor stock, monument-hero number as cover art, the credit-page issue — the right statement piece for issue Welcome to does-this-feel-right- Discussions! #1).
  • Why risograph is the uncanny match: the whole brand is one spot color on warm uncoated stock, which is riso's native, cheapest mode (tomato ≈ Riso Bright Red / Fluorescent Orange).
  • A5 saddle-stitch, 16pp, EB Garamond + Courier Prime + Noto Serif JP (all OFL-licensed for print). Full 16pp page plan for 375, production path, named riso/newsprint printers, Big Cartel/Gumroad sell plan + budget math, 8-week timeline.

2. The press route — src/pages/PrintIssuePage.tsx + .css

  • New route #/issues/:number/print. Reuses IssueCover / IssueContents / IssueFeature / IssueCredits / IssueColophon minus every web-only chrome layer (no archive nav).
  • A5 @page geometry, page breaks between blocks, print-color-adjust: exact so the warm stock + tomato spot actually render on press, plus a screen preview mode that shows page boundaries.

3. The export tool — tools/print-issue.ts + npm run print

  • npm run build && npm run print 375print/375.pdf.
  • Spawns vite preview, renders the print route in headless Chromium (Playwright, already a dependency), emits an A5 PDF with backgrounds preserved. Reusable for every issue.

Verification

  • My files are type-clean. npx tsc --noEmit reports only pre-existing tsconfig deprecation warnings (esModuleInterop / moduleResolution / baseUrl) from a newer TypeScript in the build container — tsconfig.json is untouched.
  • The PDF render itself could not run in this container (no Chromium binary); it runs locally where Playwright's browser is installed.

Next (not in this PR)

  • Visual pass on the print CSS against a rendered proof — screen sections are viewport-sized, not 148mm pages, so the page model is in place but geometry needs tuning.
  • Pre-flight: font embedding, spot-color separation, 3mm bleed.
  • Printer quote + proof copy.

https://claude.ai/code/session_013H9jXskD9pThoBLdSxV2bG


Generated by Claude Code

Give the magazine a physical body. The publication was print-native
from the start (POPEYE spine, stock/monument/colophon/postmark
vocabulary, one tomato spot color) but had never existed as an object.

- docs/print-edition.md: the plan. Debut = ISSUE 375 (cream anchor
  stock, monument-hero number). Risograph is the uncanny match (the
  whole brand is one spot color on warm uncoated stock = riso's native
  cheapest mode). A5 saddle-stitch, 16pp page plan, printers, sell plan,
  budget math, 8-week timeline.
- src/pages/PrintIssuePage.tsx + .css: #/issues/:number/print. Reuses
  the issue components minus web chrome; A5 @page geometry with
  print-color-adjust so stock + tomato spot render on press.
- tools/print-issue.ts + npm run print: renders the print route in
  headless Chromium and emits print/<n>.pdf. Reusable per issue.

Type-clean (only pre-existing tsconfig deprecation warnings remain;
tsconfig untouched).

https://claude.ai/code/session_013H9jXskD9pThoBLdSxV2bG
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants