Distillate
The essence of every paper you read.
Save to Zotero. Read on reMarkable. Distillate does the rest.
PyPI v0.3.1 Python 3.10+ MIT License
$ distillate # turn papers into notes! save to Zotero ──> auto-syncs to reMarkable │ read & highlight on tablet just move to Read/ when done │ V auto-saves notes + highlights
$ pip install distillate
$ distillate --init
How it works
Save. Read. Highlight. Distill.
Use the Zotero browser connector or mobile app. Distillate automatically picks up new papers from your library.
Distillate uploads the PDF to your tablet. Optionally removes it from Zotero to save storage (300 MB free tier).
Highlight the passages that matter to you. When you're done, just move the document to the Read folder and Distillate does the rest.
Highlighted text is pulled from the reMarkable, cleaned up, and saved as a structured markdown note grouped by page.
Your highlights, reading log, and PDFs are saved to an Obsidian vault or a plain folder on your computer.
Commands
distillateSync Zotero -> reMarkable -> notes (default)
distillate --importImport existing papers from Zotero
distillate --statusShow queue health and reading stats
distillate --suggestGet paper suggestions for your queue
distillate --digestShow your reading digest
distillate --scheduleSet up or manage automatic syncing
distillate --refresh-metadataRe-fetch metadata from Zotero + Semantic Scholar
distillate --listList all tracked papers
distillate --initRun the setup wizard
What you need
| Component | Notes | |
|---|---|---|
| Zotero account | Free | Manages your paper library |
| reMarkable tablet | Required | Where you read and highlight (uses rmapi) |
| Obsidian or output folder | Optional | Where notes are saved locally |
| Anthropic API key | Optional | For AI summaries and suggestions |
| Resend account | Optional | For weekly digest emails |
Built with love and coffee by Romain Lacombe. Powered by rmapi, rmscene, PyMuPDF, and Claude Code.
Comments
It leaves aside power user features (e.g. emails, GitHub Actions to sync when laptop is asleep, etc.), which are listed here: https://distillate.dev/power-users.html
As you mentioned Remarkable file format is a PITA to extract highlights, one thing that helped a lot was to add an OCR fix phase that uses Gemini flash model to fix common OCR errors and to merge single highlights that are across pages.