Book Exporter

Write a book inside an Obsidian vault — one manifest note lists the table of contents, each chapter and section is its own note. The plugin compiles the structure into a single manuscript and exports to EPUB and PDF via Pandoc.

Desktop only. Requires pandoc on $PATH — or set the path in settings. For PDF, Typst is the recommended engine: a single small binary with output quality close to LaTeX.

Key features

  • One note = one book. The manifest note holds the metadata and the table of contents through wikilinks. Chapters and sections live in their own notes.
  • No required tag, folder or filename. Any Markdown note can be used as a manifest.
  • EPUB and PDF. Configurable PDF engine (Typst by default; xelatex / tectonic / weasyprint available).
  • Validation before export. Missing chapters, broken wikilinks, and missing required metadata are surfaced with a clear report — no half-baked exports.
  • Per-book overrides. A book_export: block in the manifest’s frontmatter overrides plugin-level defaults (output folder, PDF engine, formats, TOC depth, page-break behaviour, extra Pandoc flags).
  • Page setup. Page size, margins, line spacing, and base font size — globally or per book, translated to the right mechanism for each PDF engine.
  • Front matter & full-bleed cover. Roman-numbered front matter with a clean reset to page 1, and a cover image that fills the first page (PDF) or becomes the EPUB cover.
  • Quick to reach. Export from the command palette, a ribbon icon, or a note’s right-click menu.
  • Manuscript preview. A dedicated command writes the compiled .md and opens it — useful for checking what Pandoc will see.

Why Pandoc?

Pandoc is the industry-standard document converter. There is no production-ready library port for JavaScript / Node, and bundling Pandoc itself is impractical (multi-platform binary, hundreds of MB). The plugin treats Pandoc as a hard prerequisite — that’s the price for high-quality output. Install once, export forever.

Quick start

  1. Install the plugin (manual install or via BRAT).
  2. Install Pandoc. For PDF, install Typst (recommended).
  3. Open any Markdown note and structure it as a manifest (see Usage).
  4. Export it — from the command palette (Book Exporter: Export current book to EPUB / PDF / all formats), the book ribbon icon, or the note’s right-click menu.

About

Created by Sébastien Dubois. Source code, issues and roadmap on GitHub.

If this plugin helps you ship a book, buy me a coffee ☕.

My other Obsidian plugins

Plugin What it does
Agentic Resource Discovery Server Local-first Agentic Resource Discovery publisher and registry that serves your AI skills and tools to agents over a local HTTP and MCP server
Bookshelf Base Display your notes as a visual bookshelf via a custom Bases view
Dataview Serializer Serialize Dataview queries to Markdown, and keep the Markdown representation up to date
Expander Replace variables across your vault using HTML comment markers. Supports static values and dynamic functions
Ghost Publish Publish your vault notes to a Ghost blog with configurable presets for tags, newsletters, and frontmatter conventions
Graph Explorer Base View A custom Bases view that renders notes as an interactive force-directed graph with explored/unexplored tracking
Hidden Folders Access Index hidden root-level folders (e.g. .claude) so they appear in the file tree, metadata cache, and Bases
Journal Bases Custom Base views for journaling and periodic reviews
Kanban Action Planner Render your notes as configurable Kanban boards and calendars inside Bases, with statuses, ordering, relationships, and scheduling
Life Tracker Capture and visualize the data that matters in your life
Note Village A 2D pixel art village where your notes become villagers you can explore and chat with using AI
Obsidian Starter Kit Adds strong typing support and powerful automation support for notes
Remarkable Synchronizer Connect to the reMarkable cloud, list, download, and sync notebook pages as images
Replicate Use AI models with ease via the Replicate.com integration
REST and MCP server Exposes CLI commands as RESTful API endpoints and an MCP server for AI tool integration
Time Machine Browse, compare, and restore previous versions of your notes using built-in file-recovery snapshots
Transcriber Transcribe images to markdown using Ollama vision models
Typefully Publish social media posts with ease using the Typefully integration
Update Time Automatically update front matter to include creation and last update times

Everything I build is documented in my newsletter and on my YouTube channel.

News & support

To stay up to date about this plugin, Obsidian in general, Personal Knowledge Management and note-taking:

If this plugin is useful to you, here are the best ways to support my work ❤️: