← Ben's LibraryComic Schema

Ben's Library — Comic Production Schema

The Global 50 · v1.0

A fresh comic system for Ben's Library — deliberately not the Nifty/manga pipeline. This defines how any of the 50 prose books becomes a comic, from art generation to the finished page, in a way that is consistent across all 50 books and cheap to run.


1. The one big idea: ART and TEXT are separate layers

Every panel is built in two independent layers:

Why: guaranteed legibility, trivial edits, free translation for INTL editions, and no re-billing Seedream to fix a typo. This is the single most important rule.


2. House look (distinct from Nifty)

Nifty series Ben's Library
Style manga / anime painterly literary picture-book realism
Feel pop, kinetic illustrated-encyclopedia × Pixar lighting; luminous, dignified
Palette bright series palette = the site's: cream #faf8f4, ink #1f2430, vermilion #b23b2e, gold #c99a2e

Accuracy must satisfy an engineer; faces are gentle and human (no rubber/cartoon faces); every panel a distinct emotion; always a luminous readable value range so captions sit cleanly — even in night/undersea scenes.

Full art rules live in series.json → art.


3. Consistency: anchors (character sheets)

Characters must look identical across all 50 books. The mechanism:

  1. Bootstrap once: generate a canonical anchor image for each recurring cast member and location — Maya, Ben, Charlie, Warren, Pixel, and the Library (series.json → cast/locations, anchor: fields).
  2. Every panel feeds the relevant anchors as Seedream image_urls, so the model edits from the canonical look rather than reinventing it.
  3. Per-book guests (Faraday, Bell, the two Steves, mine workers…) get their own anchors declared in that book's comic.json → meta.guest_cast, generated once at the start of that book.

Cast is original, inspired-by the named figures (Ben/Charlie/Warren), not photoreal likenesses — cleaner and avoids impersonation. Historical scientists are period-accurate educational illustration.


4. Data model (three files)

comics/
  series.json                      ← series bible: cast, style, palette, roster, tiers, pipeline
  schema/book.schema.json          ← JSON Schema every book file validates against
  books/<NN-slug>/comic.json       ← one book mapped: pages → panels
  books/<NN-slug>/refs/            ← generated anchor images (bootstrap output)

Hierarchy: book → pages → panels. A panel is the atomic unit (one Seedream image + its overlay text). A page arranges panels via a named layout template.

Panel fields (see schema): id, beat, setting, shot (establishing/wide/medium/close_up/insert/splash), cast[] (key + distinct expression), refs[] (anchors to feed), art_prompt (no text), aspect, overlay{captions[], bubbles[]}, credit_est.

Page layouts: cover, splash, full_bleed, two_row, three_tier, grid_2x2, big_top_two_bottom, text_plate.

books/01-apple/comic.json is the worked exemplar — cover, front matter and Chapters 1–2 are fully specced panels; Chapters 3–12 carry a page_note beat-sheet plus one hero panel each, ready to expand to full panels the same way.


5. Adapting 35k words → a comic

The prose can't all fit, so each chapter compresses to a beat sheet of key visual beats (one panel each). Standard density = ~4 beats/chapter. The manuscript's set-pieces map almost 1:1 to hero panels (hilltop fires → telegraph → Faraday → 1947 transistor → cleanroom → undersea fibre → garage → 2007 stage → globe → mine → Silicon Key). Dialogue becomes bubbles; narration becomes captions.


6. Size & cost (density tiers)

Tier Panels/ch Body +Matter Total panels ~Pages Seedream credits*
Lean 2 24 6 30 ~34 ~155
Standard 4 48 7 55 ~46 ~285
Full 6 72 8 80 ~66 ~415

* total_panels × 4 credits × 1.3 retry-buffer. Confirm the live rate by logging kie.ai credit before/after the first bootstrap panel. Recommended: Standard — rich enough for the literary voice, ~$1.50–2.50 of art per book. Animation (Seedance) is separate and much pricier (~14 cr/5s clip) if added later.


7. Pipeline (build steps)

  1. bootstrap — generate cast + location anchors (once for the series) and this book's guest anchors → refs/.
  2. gen — for each panel: compose [global style] + [art_prompt] + [cast expressions], feed refs[] as image_urls, call Seedream 2K, save art/<panel_id>.jpg. Credit-floor guard (stop < 30, fall back). Skip already-done panels (resumable).
  3. compose — lay panels onto pages per layout, overlay caption plates + speech bubbles (text layer).
  4. build — emit a web reader (like the prose reader, under /comics/<slug>/) and a print PDF.
  5. qa — render pages and check legibility (no text-on-text, captions on light plates) before shipping.

Steps 1–2 are the only ones that cost credits and are fully resumable.


8. Open decisions (need your call before build)

  1. Density — Standard (~46pp) recommended. Lean or Full instead?
  2. Aspect — landscape 16:9 hero panels (screen-friendly) vs portrait (print-book-friendly). Default: landscape, with portrait splashes.
  3. Cast likeness — original inspired-by characters (recommended) vs closer to the real Graham/Munger/Buffett faces.
  4. Output first — web reader, print PDF, or both. Default: both.
  5. Build it — approve this schema and I'll write the pipeline scripts + run bootstrap on Book 1's anchors as the pilot.