Book Exporter plugin for Obsidian

A plugin that turns a structured Obsidian note tree into an actual book; exported to EPUB and PDF.

Canonical version: Book Exporter plugin for Obsidian.

A plugin that turns a structured Obsidian note tree into an actual book; exported to EPUB and PDF.

The Book Exporter plugin treats one note as the manifest for a book: its frontmatter holds the metadata (title, authors, language, cover, ISBN, etc.) and its body lists the table of contents through wikilinks. Each chapter and section is a separate note in the vault. When the plugin runs, it walks the manifest, compiles every linked note into a single Markdown manuscript, then hands the result to Pandoc for EPUB and PDF generation.

The model is one note = one book. There are no mandatory naming conventions, no required folders, no special tags. Any Markdown note can act as a manifest.

This is a plugin that I have created. It removes the friction between writing a book inside Obsidian and shipping it to readers; no manual concatenation, no Scrivener detour, no copy-paste into Word.

Why it matters

Writing a long-form work in Obsidian gives you backlinks, atomic notes, and a real graph. Until now the cost was that exporting was a chore. With this plugin, the same vault that holds your research is the vault that produces the EPUB.

Manifest contract

The manifest's body is a heading tree. There are no reserved heading names — the structure is yours.

  • # H1 is the book title (or use title: in frontmatter — that wins).
  • Every ## H2###### H6 is a section at the matching level. Sections nest under the previous higher-level section.
  • Every bullet under a section that contains one or more **wikilinks** adds those links — in source order — to the section. The linked notes are inlined at that point.
  • Bullets without wikilinks are ignored. Text around a wikilink is dropped (commentary).

Manifest example

# The Context Layer

## Foreword
- **Foreword**

## Part I — The Problem
### Chapter 1 — Why Notes Fail
- **Why Notes Fail**
- **The Cost of Forgetting**

## Part II — The Solution
### Chapter 2 — Building Context
- **Building Context**

## Acknowledgements
- **Acknowledgements**
- **About the Author**

When the manifest is parsed, configured "sections to skip" (default Related, References, Title Options, Target Audience) are dropped from the body first — so authoring scaffolding sections stay in the manifest but never reach the export. The same list is then applied to each linked note when it's inlined: frontmatter is stripped, configured sections removed, first # H1 dropped, remaining headings demoted, and Obsidian-only syntax (callouts, embeds, comments, internal links) is rewritten.

Per-book overrides

Global settings are configured once in the plugin settings (output folder, default formats, Pandoc path, PDF engine, sections to skip, etc.). Any of those can be overridden per book via a book_export: block in the manifest frontmatter; output folder, PDF engine, formats, TOC depth, page-break behavior, and extra Pandoc flags are all configurable per book.

Validation

The plugin ships a dedicated Validate current book command that checks the manifest before export: missing chapters, broken wikilinks, incomplete metadata. Errors are reported clearly so a broken book never reaches the export step.

Commands

  • Export current book to EPUB / PDF
  • Export current book to all formats
  • Preview compiled manuscript (.md)
  • Validate current book
  • Open exports folder

Requirements

Desktop only. Pandoc is the single hard prerequisite. For PDF, the recommended engine is Typst; a single small binary that produces professional book-quality output without the LaTeX install. xelatex / tectonic / weasyprint / wkhtmltopdf remain available as alternatives.

Why Pandoc

Pandoc is the industry-standard document converter. No production-ready JavaScript or Node alternative exists, and bundling Pandoc inside the plugin is impractical given its size and per-platform binaries. Requiring it as an external dependency is the pragmatic trade.

Installation

  • Manual install, or via the BRAT plugin for Obsidian
  • Install Pandoc (system PATH or configured in plugin settings)
  • Install Typst (recommended PDF engine)
  • Open a manifest note and run Book Exporter: Export current book to EPUB (or PDF, or all formats) from the command palette

References


About Sébastien

I'm Sébastien Dubois, and I'm on a mission to help knowledge workers escape information overload. After 20+ years in IT and seeing too many brilliant minds drowning in digital chaos, I've decided to help people build systems that actually work. Through the Knowii Community, my courses, products & services and my Website/Newsletter, I share practical and battle-tested systems.

I write about Knowledge Work, Personal Knowledge Management, Note-taking, Lifelong Learning, Personal Organization, Productivity, and more. I also craft lovely digital products and tools.

If you want to follow my work, then become a member and join our community.

Ready to get to the next level?

If you're tired of information overwhelm and ready to build a reliable knowledge system:

Found this valuable? Share it with someone who needs it.

Join 6,000+ readers. Get practical systems for knowledge & AI. Free.

Subscribe ✨

Free: Knowledge System Checklist

A clear roadmap to building your own knowledge system. Subscribe and get it straight to your inbox.

6,000+ readers. No spam. Unsubscribe anytime.