Publishing Pipeline · Free & Open Source
Your Obsidian vault,
print-ready.
Write in Obsidian. Get a press-ready PDF. AuthorKit typesets your Markdown through Quarto + Typst — chapters opening on a recto, binding margins, blank versos without folios — and reads your manuscript while you draft it, flagging the structural problems before they reach a proof.
One small book.yml per title, not a near-identical build
script per book. Novels, picture books and workbooks from the same tool.
While you write
- Structure, charted
- Renders your manuscript's actual pacing — scene by scene, act by act — as a chart you can read in one look. Word counts come from the prose, not your intentions about it.
- Measured against a shape
- Compare that arc to a named structure: Freytag's Pyramid, or a rasa-cycle template for non-Western dramatic shape. Declare the climax you meant to write and see where it actually falls.
- Continuity checks
- Characters referenced but missing a note. Act and chapter drift. Scene files sitting in the folder but absent from the index — in the folder, not in the book.
- Script-agnostic linking
- Links each character's first mention to their note. Which scripts, and what inflected tail they carry, is declared per book — a Gujarati-only book and an English-only book configure differently without either touching the code.
When you print
- Prose, typeset
- Write Markdown; the build sets it. Trim size and bleed, a wider gutter for the binding, chapters opening on a right-hand page, blank versos carrying no folio, old-style figures. The defaults ship with Typst, so it renders with no fonts installed.
- Illustrated layout
- A picture book places its own art and type per scene, in a Typst block that stays readable in Obsidian. Bleed is applied on the way out, flipping edge by edge as the leaves demand.
- Kindle from the same source
- The ebook interior is built from the scenes that made the print file — no second manuscript to keep in step.
- It asks first
- Setup asks what kind of book this is before it writes anything, because a novel and a picture book want opposite page setups. Getting it wrong yields a valid PDF of the wrong shape.
In Claude Code
- /book-new
- Scaffolds a book vault — asks for title, format, manuscript status and target channels, then writes the structure.
- /book-audit-vault
- Checks the vault is sound:
book.ymlvalid,Story/Index.mdandCharacters/present, and refreshes the structure chart. - /book-audit-manuscript
- Checks the manuscript itself — characters referenced but missing a note, act and chapter drift, first mentions that should be linked.
- /book-build
- Renders the print PDF and preps the Kindle interior from the same source.
Or without Claude Code
Every one of those is a command. The plugin is a convenience, not the product.
python3 authoring/cli.py init # interview, then scaffold
python3 authoring/cli.py skeleton # structure + pacing chart
python3 authoring/cli.py link # first mentions -> character notes
python3 authoring/cli.py check # continuity and unlisted scenes
python3 pipeline/build.py # -> Deliver/<title>.pdf
Two runnable example vaults ship with it — a nested novel and a flat picture book, both public-domain text, under 14 KB together. The kit self-tests in 47 checks.
Install
/plugin marketplace add maulikmehta/obsidian-book-pipeline
/plugin install obsidian-book-pipeline@authorkit
Free, MIT licensed. Source on GitHub.
This tool is actively being developed. Results may occasionally be unexpected — always verify your output before submitting to a distributor.
Requirements
- Quarto — renders
.qmdto Typst to PDF - Python 3
- ImageMagick, for cover cropping
- A typeface, if you want one — type is your book’s design, not the pipeline’s