Obsidian Publisher

Active

Rust CLI that preprocesses an Obsidian vault into Zola-ready content.

Source Code
rust cli obsidian zola

Rust CLI that preprocesses an Obsidian vault into Zola-ready content.

I like to keep notes in Obsidian, but I couldn’t find a way to share them that I liked. Given that Zola is my prefered static site generator, this small CLI bridges the gap.

Features

  • Vault scan with configurable ignore globs
  • publish: true frontmatter filter (opt-in or opt-out)
  • Frontmatter normalization to Zola-compatible TOML or YAML
  • Wikilink → standard markdown link conversion with disambiguation
  • Embed/transclusion expansion with depth limit and cycle detection
  • Obsidian callout → HTML transformation
  • Backlink tracking and graph.json emission for link graph visualization
  • Asset copy and link rewriting
  • Dataview inline field handling (strip, preserve, or extract to frontmatter)
  • Highlight (==text==) → <mark> conversion
  • Incremental rebuilds in --watch mode
  • --dry-run to preview changes without writing