/obsidian-zotero-reader-plugin

Read and annotate PDFs/EPUB/HTML inside Obsidian with awesome Zotero Reader!

Primary LanguageTypeScriptGNU Affero General Public License v3.0AGPL-3.0

Obsidian Zotero Reader (Beta)

GitHub Stars Issues PRs Status Discord

Read and annotate PDFs/EPUB/HTML inside Obsidian with awesome Zotero Reader! This plugin adds the zotero reader and utilities for linking annotations back to your notes.

Demo

Demo


Installation (via BRAT)

Note: This plugin is not ready for production yet. Install using the Obsidian BRAT plugin.

  1. In Obsidian, open Settings → Community plugins and install BRAT.
  2. In BRAT, choose Add beta plugin and enter the repo: duanxianpi/obsidian-zotero-reader-plugin.
  3. Enable Obsidian Zotero Reader in your Community plugins list.

Usage

  1. Create a new md file
  2. Add the following YAML frontmatter to the Markdown file. The source can point to a local pdf, epub, or html file inside Obsidian or network file.
---
zotero-reader: true
source: path/to/file.pdf # or .epub / .html
---

source also support link like [[path/to/file]]

Then open the note and click the icon in the top-right to launch the reader.

Annotation

anno

Theme

theme

Link

theme


Features

  • Add annotation – Create annotations while viewing the document.
  • Copy link to annotation – Grab a direct link to a specific annotation.
  • Copy link to selection – Link to any text selection for precise references.
  • Annotate with Obsidian’s editor – Annotate with Obsidian's Markdown editor directly!
  • Sync Color Theme - Auto Sync the theme with Obsidian.
  • Pure Markdown - No extra json, store with pure markdown.

Development

Make sure you have recent Node.js and npm installed.

One-time setup and full build:

npm install
npm run build:pdf.js
npm run build

Active development (run in parallel, separate terminals/tabs):

npm run dev:reader
npm run dev:plugin
  • build:pdf.js – prepares bundled PDF.js assets.
  • dev:reader – runs the zotero reader in watch mode.
  • dev:plugin – builds the Obsidian plugin in watch mode.

Acknowledgments

Special thanks to the Zotero team for the excellent application that inspired this plugin.


Sponsor

Thanks for checking out the plugin! I’m currently a student and working on this plugin nights and weekends. If it’s useful to you, a small tip will help me keep shipping features.

buymeacoffee-orange-badge

Troubleshooting

  • If the reader doesn’t open, double‑check the YAML frontmatter is valid and that source points to an existing file.
  • After updating, try disabling/enabling the plugin or reloading Obsidian.

Roadmap / Feedback

Have ideas or found a bug? Please join the discord server! Join our Discord

Star History

Star History Chart