https://github.com/sparshsam/openreader
Private desktop PDF tooling for local reading, annotation, search, diff, and workspace restore.
https://github.com/sparshsam/openreader
calm-software desktop-app desktop-utility document-tools local-first macos non-commercial pdf pdf-reader personal-data privacy privacy-first pyinstaller pymupdf pyside6 python release-engineering windows
Last synced: 3 days ago
JSON representation
Private desktop PDF tooling for local reading, annotation, search, diff, and workspace restore.
- Host: GitHub
- URL: https://github.com/sparshsam/openreader
- Owner: sparshsam
- License: agpl-3.0
- Created: 2026-05-21T04:30:13.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2026-06-21T05:15:47.000Z (11 days ago)
- Last Synced: 2026-06-21T05:18:01.963Z (11 days ago)
- Topics: calm-software, desktop-app, desktop-utility, document-tools, local-first, macos, non-commercial, pdf, pdf-reader, personal-data, privacy, privacy-first, pyinstaller, pymupdf, pyside6, python, release-engineering, windows
- Language: Python
- Homepage: https://apps.microsoft.com/detail/9MXDVW2645LL
- Size: 4.92 MB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
- Security: SECURITY.md
- Support: SUPPORT.md
- Roadmap: ROADMAP.md
- Agents: AGENTS.md
Awesome Lists containing this project
README
OpenReader
Private PDF tools for your computer. No uploads. No accounts. No cloud.
Built for Windows 10 & 11 · 100% Offline · Open Source · AI-ready
⭐ Get OpenReader
---
## Gallery
| Dark Mode | PDF Tools |
|---|---|
|  |  |
| About & Keyboard Shortcuts | Sample Document |
|---|---|
|  |  |
---
## Why OpenReader
| | |
|---|---|
| **Truly private** | Every operation runs on your machine. No accounts, no telemetry, no cloud uploads. |
| **Works offline** | No internet required. Open, read, and annotate PDFs anywhere. |
| **Built for Windows** | A native reading experience with proper Windows 10/11 integration. |
| **AI-ready** | Built-in MCP server lets AI agents interact with your PDFs — entirely local. |
---
## Features
| | |
|---|---|
|
**Read** — Open PDFs, one-page or continuous scroll, fit-width zoom, page jump. |
**Annotate** — Highlight, underline, strikethrough, and sticky notes. Saved as native PDF annotations. |
|
**Search** — Full-document keyword search with match count and navigation. |
**Library search** — Index entire folders with SQLite FTS5 for cross-document BM25-ranked search. |
|
**Semantic search** — TF-IDF cosine similarity — meaning-based matching, no external ML. |
**Compare** — Side-by-side diff with color-coded changes and structured summary. |
|
**Multi-tab** — Open several documents in one window with movable tabs. |
**Dark mode** — System-aware theme with Auto/Light/Dark toggle. |
|
**PDF tools** — Merge, split, extract page ranges, compress. |
**OCR fallback** — Automatic OCR on scanned/image-based pages when Tesseract is available. |
|
**Session restore** — Remembers open documents and page positions across restarts. |
**AI agent integration** — Built-in MCP server with 14 tools for automated PDF workflows. |
---
## Designed for
| Audience | Why OpenReader |
|----------|---------------|
| **Students** | Read textbooks, annotate lecture notes, search across research papers — all offline. |
| **Professionals** | Review contracts, compare document versions, merge reports without uploading to any service. |
| **Researchers** | Index and search across PDF libraries, extract text, build automated PDF pipelines. |
| **Privacy-conscious users** | Full-featured PDF tool that never sends your documents anywhere. |
| **AI adopters** | Connect AI agents to your local documents for automated reading, searching, and processing. |
---
## Design Philosophy
> *"Software should respect your documents. They stay on your computer, under your control."*
OpenReader is built around a single idea: **a PDF reader should feel like a well‑made tool, not a web page.** The interface follows native Windows conventions — real menus, keyboard shortcuts, proper window management — with a refined dark theme (Tokyo Night‑inspired) and a clean light option. Every interaction is immediate, every feature discoverable without tutorials.
The focus is on reading and working with documents, not fighting the interface. Toolbar buttons have clear vector‑drawn icons, tabs are movable, zoom is instant, and the reading view puts your document first.
---
## Built With
---
## Version Journey
| Release | Date | Milestone |
|---------|------|-----------|
| **v1.2.4** | Jun 2026 | Toolbar icon redesign — all buttons use QPainter vector icons |
| **v1.2.3** | Jun 2026 | Reader UX polish — Fit Page on open, Ctrl+Mouse Wheel zoom |
| **v1.2.2** | Jun 2026 | Store submission fix — XML DOM patching, CI validation |
| **v1.2.1** | Jun 2026 | First Microsoft Store release candidate |
| **v1.2.0** | Jun 2026 | MSIX packaging, self‑update removed, App Installer integration |
| **v1.1.0** | Jun 2026 | MCP server — 14 AI agent tools, local document automation |
| **v1.0.6** | Jun 2026 | Single‑instance IPC, icon bundling, Qt file dialog fallback chain |
| **v1.0.0** | Jun 2026 | Stable release — reliability, security audit, regression suite |
| **v0.3.0** | May 2026 | Library search, PDF comparison, semantic search, modular refactor |
| **v0.2.0** | May 2026 | Annotations (highlight, underline, strikethrough, sticky notes) |
| **v0.1.0** | May 2026 | First release — PySide6 PDF reader, text search, merge/split/compress |
[Full changelog →](CHANGELOG.md)
---
## License
OpenReader is free software under the [GNU AGPLv3](LICENSE).
Copyright © 2026 Sparsh Sam.
---
## Part of the Open Collection
Open\* is a family of privacy-first, open-source applications. Every app is local-first, respects your data, and is built with care.
| | App | Description | Links |
|---|---|---|---|
|
| **OpenReader** | Private PDF tools for your computer. | [Repo](https://github.com/sparshsam/openreader) · [Web](https://reader.kovina.org) |
|
| **OpenLedger** | Local-first personal finance ledger. No noise. | [Repo](https://github.com/sparshsam/openledger) · [Web](https://ledger.kovina.org) |
|
| **OpenProof** | Privacy-first proof-of-existence for files, onchain. | [Repo](https://github.com/sparshsam/openproof) · [Web](https://proof.kovina.org) |
|
| **OpenSend** | Free, ad-free, open-source file sharing between devices. | [Repo](https://github.com/sparshsam/opensend) |
|
| **OpenSnap** | Minimal always-on-top screenshot widget for Windows. | [Repo](https://github.com/sparshsam/opensnap) |
|
| **OpenJournal** | Privacy-first local activity journal for Windows. | [Repo](https://github.com/sparshsam/openjournal) |
|
| **OpenPalette** | Local-first color studio — harmonies, tokens, accessibility. | [Repo](https://github.com/sparshsam/openpalette) |
|
| **OpenScrabble** | Multiplayer Scrabble with chat and shared boards. | [Repo](https://github.com/sparshsam/openscrabble) |
|
| **OpenSprout** | Privacy-minded plant care dashboard and watering logs. | [Repo](https://github.com/sparshsam/opensprout) |
---
*Last updated: June 2026*