Skip to main content

obsidian-pdf-exporter

Export Obsidian vaults to PDF with plugin support. Runs locally or in CI.

Test, Lint and Build Build and publish to PyPI Package version Documentation

Documentation: https://spenhouet.com/obsidian-pdf-exporter/

ope turns a folder of an Obsidian vault into one PDF. Every folder becomes a numbered section, and the Obsidian syntax in the notes is rendered: wiki links, embeds of notes, headings, blocks and images, callouts, highlights, tasks, footnotes, math, Mermaid and Bases. Community plugin syntax from Dataview, Meta Bind, Folder Notes, Block Link Plus, Excalidraw, draw.io and pandoc citations is rendered too. It also makes redline PDFs between two git commits, and templates control the look with CSS. It runs on the command line, without Obsidian, so it works in CI.

Each feature page of the docs shows the Markdown next to the rendered PDF.

Install

macOS / Linux

curl -LsSf uvx.sh/obsidian-pdf-exporter/install.sh | sh && ope setup --yes

Windows

powershell -ExecutionPolicy ByPass -c "irm https://uvx.sh/obsidian-pdf-exporter/install.ps1 | iex; ope setup --yes"

ope setup installs the native libraries WeasyPrint needs and pandoc. See Installation for every OS, uv, pip and CI.

Quick start

ope export ./MyVault/Handbook --title "Team handbook" --version 1.2.0
ope redline ./MyVault/Handbook --from-commit v1.1.0 --to-commit HEAD
ope export ./MyVault/Handbook --template ./my-template/
ope --help

Documentation

Topic Link
Install on every OS, quick start Getting started
Every command, flag, -O option, env var and exit code CLI reference
Markdown: tables, code, footnotes, math Markdown
Obsidian syntax: wiki links, embeds, callouts, Mermaid Obsidian
Dataview, Meta Bind, Excalidraw, draw.io, writing a plugin Plugins
Tracked-changes PDFs Redline
Templates, header and footer, CSS classes, recipes Templates and styling
Claude Code plugin, skill, llms.txt Use with AI agents
Development setup, architecture, tests Contributing

Use with AI agents

The repository is a Claude Code plugin marketplace with a skill for ope:

/plugin install obsidian-pdf-exporter --marketplace Spenhouet/obsidian-pdf-exporter

On older Claude Code versions, run /plugin marketplace add Spenhouet/obsidian-pdf-exporter and then /plugin install obsidian-pdf-exporter@obsidian-pdf-exporter. Other agents can read llms.txt.

License

MIT

Metadata

Release files for obsidian-pdf-exporter 0.8.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for obsidian-pdf-exporter 0.8.0
File Size Uploaded
obsidian_pdf_exporter-0.8.0.tar.gz 128.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for obsidian-pdf-exporter 0.8.0
File Interpreter ABI Platform
obsidian_pdf_exporter-0.8.0-py3-none-any.whl Python 3 none any Details

Total release size: 301.3 kB

Release files / obsidian_pdf_exporter-0.8.0.tar.gz

Download URL obsidian_pdf_exporter-0.8.0.tar.gz
Size 128.6 kB
Tags Source
SHA-256 checksum
How to use checksums
3210c09c6275420c1b80c8ac0804b08ea3c805bb611edc92249b7fcd7a9421b4
BLAKE2b-256 checksum
How to use checksums
1592ee61e29d62c6327d27b754be3184a7f7cd7cdc85940745246091e41651d1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / obsidian_pdf_exporter-0.8.0-py3-none-any.whl

Download URL obsidian_pdf_exporter-0.8.0-py3-none-any.whl
Size 172.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0e6cf2e863715290254b6bbe0ecebeee824af263a7f125c6a8ce79eff0a48864
BLAKE2b-256 checksum
How to use checksums
43c9e9d4301889af19d684364ed6fba89970ca93d71c0c67e472fa4a4833718a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

0.14.1

2 release files

0.14.0

2 release files

0.13.0

2 release files

0.12.2

2 release files

0.12.1

2 release files

0.12.0

2 release files

0.11.2

2 release files

0.11.1

2 release files

0.11.0

2 release files

0.10.1

2 release files

0.10.0

2 release files

0.9.0

2 release files

0.8.2

2 release files

0.8.1

2 release files

This release

0.8.0 This release

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page