Professional Book Workspace: Markdown, Paged.js, and Tagged PDF
How the large-book template organizes ordered sources, performs frozen offline browser pagination, checks its tagged PDF, and publishes a reader plus edition.
Professional Book Workspace: Markdown, Paged.js, and Tagged PDF
When to use this template
Open /check-ins/new and choose Create a book to create a private normal draft with Professional Book - Markdown/Paged PDF and the publisher pool already selected. Use it for a large source-first book with frontmatter, chapters, appendices, backmatter, browser-native mathematics, a local reader, and a tagged PDF. For an existing post, select the same template from the Workspace tab. Choose the separately labeled Technical Book - Markdown/LaTeX PDF template when a conventional academic LaTeX toolchain is the primary requirement.
Both templates attach to normal GetPaidX posts. They do not create a separate account or post kind, and they reuse the same workspace, snapshot, pricing, artifact-access, and publication controls.
Source contract
book.json owns title/edition metadata, exact source order, license, and output paths. Canonical content is organized under:
frontmatter/;chapters/;appendices/;references/;CREDITS.mdandLICENSE.md;styles/and reviewed build scripts.
Every source begins with a stable HTML anchor and appears once in book.json.sources. Generated .publisher-data/, build/, artifacts/, and node_modules/ content is disposable and must not be edited as manuscript source.
Frozen offline runtime
The template declares pnpm 11.16 and requires its reviewed pnpm-lock.yaml. The publisher controller seeds a private writable package store, performs a frozen offline install, and links generated dependencies from the private runtime cache. Normal builds make no external browser request.
The publisher image pins Node, Playwright/Chromium, qpdf, Poppler, and open fonts. A bounded per-template install/build budget permits large pagination without making controller execution unlimited.
Validate, build, and preview
Run:
pnpm run validate
pnpm run build
pnpm run check:pdf
Validation checks manifest/source order, stable anchors, links, active HTML, remote images, headings, KaTeX, rights, and the lock contract. Build deterministically assembles Markdown, creates the local reader, paginates source sections, exports a tagged US Letter PDF, fixes metadata, checks qpdf/Poppler/text/fonts, and atomically replaces the curated site only after every gate passes. PDF text checks follow your current source headings and source count. The 4–2,000-page check is a guardrail, not a tested capacity promise; large books still need resource, time, and visual checks. The PDF embeds its fonts; browser reader pagination may vary with the reader's installed fonts.
pnpm run dev watches canonical inputs, serializes rebuilds, and preserves the last successful site after a failed edit. The authorized preview exposes bounded status and log endpoints.
Publication output
Only artifacts/site/ is published:
| Output | Purpose |
|---|---|
index.html | Edition landing page and PDF preview |
book.pdf | Tagged, metadata-fixed downloadable edition |
reader/ | Local browser-native Paged.js reader and fonts |
Before publication, inspect the title, contents, every chapter/appendix start, math, tables, code, bibliography, credits, license, and page numbers. Save a workspace snapshot, publish the site, and confirm both the anonymous landing/PDF and reader/index.html work under the stable /s/{shareId}/ prefix. Then confirm artifact/workspace purchase guards match the offer.
Common problems
| Symptom | What to check |
|---|---|
| Source is absent from the book | Add it once to book.json.sources |
| Link fails validation | Preserve the target's stable anchor and update the reference |
| Math reports an error | Use KaTeX-supported syntax outside code spans |
| Runtime tries the network | Confirm the publisher pool and required pnpm lock are selected |
| Preview keeps the old edition | Open /__book/status and the bounded log, then fix the failed source/build gate |
| PDF is rejected | Check metadata, tagging, page size, embedded fonts, blank pages, and forbidden render text |
Related docs
Related docs
See it in action
Previous
Technical Book Workspace: Markdown, LaTeX, and PDF
How to create an ordered technical or academic book with LaTeX, inspect its PDF, save source milestones, and publish the edition from a post workspace.
Next
Workspace Automation Controls
The end-user guide to schedule setup, webhook triggers, Telegram and WhatsApp controls, and what each workspace automation setting changes.