4096×4096 source images decoded simultaneously by Chromium consumed ~3.2 GB,
exhausting WSL2 RAM. Build now uses sharp to downsize to 2550×2550 (8.5 in ×
300 DPI) into output/resized/ before Puppeteer loads them, cutting in-memory
footprint to ~1.25 GB. Also adds all story images (01–12) to the repository.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Replaces Georgia + per-story color theming with a unified premium
fairytale look: Cormorant Garamond (display/titles) + Lora (body),
warm cream text pages (#faf8f2 with paper noise texture), deep ink
typography (#1e1b18) throughout — no per-story text color variation.
- fonts/: committed WOFF2 files via @fontsource packages; auto-copied
by scripts/setup-fonts.js (runs as postinstall)
- Typography: story number in small caps, hairline rule, ❧ ornament
- Layout: cream background replaces per-story bg, radial glow on title
- build.js: passes frontMatter (author, year) to templates
- Templates: author byline on title page, cleaner imprint page
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
scripts/cover.js computes the exact cover canvas dimensions from the
page count in book-meta.json (written by build.js), using the KDP
Premium Color spine formula (0.002347 in/page), and renders a
Nunjucks template to a single PDF containing back cover, spine, and
front cover with bleed (0.125 in) and safe-zone overlay guides.
- `pnpm cover` — generate output/cover.pdf
- `pnpm all` — build interior + both PDFs in one command
- Cover artwork slots: images/cover/front.png, images/cover/back.png
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds the full authoring and build toolchain for "Das Kaleidoskop der
Schlummerwelten" — all 12 story content files in Markdown, Nunjucks
HTML templates, CSS print layout, and Puppeteer-based PDF generation
targeting Amazon KDP (8.5×8.5 in, 0.125in bleed).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>