多格式转换依赖 pandoc,扫描件 OCR 需 ocrmypdf;项目为多许可证工作区,无统一项目级许可证,使用前需查 LICENSING.md。
hygg
kruseioAGPL-3.0活跃维护极简的 Vim 风格终端文档阅读器,用键盘操作在命令行里读 PDF、EPUB 等电子书,省去开图形阅读器的麻烦。
📚 Simplifying the way you read. Minimalistic Vim-like TUI document reader.
cargo install --locked hygg
hygg doc.pdfREADME 未说明具体硬件要求;作为终端 TUI 程序在 Linux、macOS、Windows 上运行,未提及显存或 GPU 需求。
极简 Vim 风格终端文档阅读器,在 TUI 里读 PDF、EPUB、DOCX 并记住进度
极简的 Vim 风格终端文档阅读器,用键盘操作在命令行里读 PDF、EPUB 等电子书,省去开图形阅读器的麻烦。
核心能力
- 通过 pandoc 支持 PDF、EPUB、DOCX 等多种格式
- 用 Vim 风格键位做键盘导航与可视选择复制
- 支持搜索、高亮、书签并自动保存阅读进度
- 可在终端内联渲染 PDF 彩色图片,扫描件走 OCR
- 从选中文本直接执行 shell 命令并分屏看输出
容易踩的坑
- 0.1.27最新正式版2026-10-02 · 2026-10-02 14:48 UTC
Prebuilt downloads are below — or
cargo install hyggfor the CLI, and the web app needs no download: https://kruseio.github.io/hygg/What the assets are, which one you want, and how to verify them: https://github.com/kruseio/hygg/blob/0.1.27/docs/pages/release.md
[!WARNING] Some builds did not complete for this tag, so this release is missing part or all of:
- iOS simulator build
Everything else attached below is unaffected. See the assets for what is actually here.
Changelog
Features
- pwa: auto-update banner when a newer build ships (742ff6f)
- pwa: show the build timestamp in settings, in UTC (c954987)
Bug Fixes
- ci: re-fetch the annotated tag before reading the release notes (3df4c37)
- deps: refresh the workspace and clear every open advisory (ef0ca9b)
- models: stop concurrent model fetches racing over one .part file (a53f3c5)
- justify: calculate CJK layout using terminal display width (b869b4b)
- justify: handle Unicode widths safely in narrow layouts (c7ec551)
- justify: correct tab width and strengthen Unicode mutation coverage (b671c55)
- justify: keep long continuation words within column width (0d8bcaf)
- ci: restore workspace and native PR checks (b16dcf7)
Miscellaneous Tasks
- pwa: reword the support-the-project blurb (b935247)
- tools: cap incremental build caches at 4 GB (6c936f3)
Refactor
- retire the hygg-pdf-extract and hygg-cff-parser forks (11902e3)
Documentation
- docker: correct how the GHCR page sources license and README (2ef8107)
- readme: drop the Star History section (f051130)
- record the advisories this tree carries knowingly (9f10d53)
- fix broken links and bump pinned versions to 0.1.26 (3c7e0b8)
Styling
- pwa: rewrap an install.rs doc comment to satisfy rustfmt (9621648)
- pwa: add 8px gap below the account create/sign-in tabs (423370e)
Testing
- justify: cover Unicode-related formatter paths completely (6a414ae)
- justify: add bounded Unicode property tests (0b055d4)
- justify: gate scoped mutation scores for Unicode and TOC (3dc0f75)
CI
- pre-install libimobiledevice for the iOS build (ba5e1c2)
- stop the weekly scheduled runs on ci, docker and native-apps (c408d71)
- release: ship the Windows desktop app as a portable zip (73c50eb)
- 0.1.262026-07-17 · 2026-07-17 18:24 UTC
查看更新说明
Prebuilt downloads are below — or
cargo install hyggfor the CLI, and the web app needs no download: https://kruseio.github.io/hygg/What the assets are, which one you want, and how to verify them: https://github.com/kruseio/hygg/blob/0.1.26/docs/pages/release.md
[!WARNING] Some builds did not complete for this tag, so this release is missing part or all of:
- iOS simulator build
Everything else attached below is unaffected. See the assets for what is actually here.
Changelog
Features
- pwa: faithful GitHub Star button, left of the Sync action (100de9a)
- pages: continuously deploy main to a /main channel (ba713c8)
- server: claim the data directory, and refuse a stranger's (5dc2bab)
- pwa: move the sync action beside the import button (d7dbba6)
- tools: derive the version, the changelog and the tag from the commits (a61a974)
- shared: signup and commerce wire DTOs (667c388)
- server: POST /api/v1/signup and a public web-session seam (76ff83a)
- pwa: streamlined signup, sign-in and a dormant subscribe flow (31789a9)
Bug Fixes
- pages: make the injector robust to Trunk dropping (71a5c33)
- pages: SPA deep-link routing + service-worker deploy isolation (f719af3)
Miscellaneous Tasks
- drop hygg-saas leftovers and correct stale docs (b6fa9d5)
Documentation
- add a Responsible AI page (aad190a)
- 0.1.252026-07-16 · 2026-07-16 19:15 UTC
查看更新说明
Install
CLI / TUI — download the archive for your platform below and put
hyggon your PATH, or:cargo install hyggThe macOS archive is a universal binary (Apple silicon + Intel). ODT/DOCX support shells out to pandoc, which is not bundled.
Desktop app —
.dmg(macOS),.deb/.AppImage/.rpm(Linux),.msi/.exe(Windows). These are unsigned: macOS Gatekeeper and Windows SmartScreen will warn on first launch.Web / PWA — no download needed:
- latest: https://kruseio.github.io/hygg/
- this version, pinned: https://kruseio.github.io/hygg/0.1.25/
- all versions: https://kruseio.github.io/hygg/versions.html
Server — self-host the sync server from the image published for this tag (linux/amd64 + linux/arm64):
docker run -d -p 3032:3032 -v "$PWD/data:/app/data" ghcr.io/kruseio/hygg-server:0.1.25Android —
hygg-android-0.1.25-debug.apkis debug-signed. It sideloads fine, but the signing key differs per build, so uninstall any previous version first rather than upgrading in place.iOS — simulator build only; it cannot be installed on an iPhone. A signed
.ipaneeds an Apple Developer certificate.Verify a download against
SHA256SUMS.Full Changelog: https://github.com/kruseio/hygg/compare/0.1.24...0.1.25
- ocr-models-v1.0OCR models (v1.0)2026-07-16 · 2026-07-16 18:08 UTC
查看更新说明
PaddleOCR ONNX models (monkt/paddleocr-onnx, Apache-2.0), fetched at runtime by hygg's
ocrfeature and cached locally. Provenance + pinned SHA256s: packages/cli-pdf-to-text/assets/ocr/monkt-paddleocr-onnx/MANIFEST.md - tts-models-v1.0TTS models (v1.0)2026-07-16 · 2026-07-16 09:49 UTC
查看更新说明
Kokoro timestamped ONNX model + voices for the reader's `:speak` narration.
The CLI downloads these on first use and verifies each against a pinned SHA-256 (see cli-text-reader speech/kokoro/files.rs). Self-hosted here so the reader never reaches into a third-party repo at narration time.
file bytes sha256 kokoro-v1.0-timestamped.onnx 325532171 651ea8291843a92276a4a003581a215cb07d15e47dde6fcfb1b768f9a1682054 voices-v1.0.bin 28214398 bca610b8308e8d99f32e6fe4197e7ec01679264efed0cac9140fe9c29f1fbf7d
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
hygg
📚 Simplifying the way you read. Minimalistic Vim-like TUI document reader.
Why hygg?
- Universal document support - PDF, EPUB, DOCX, and many more formats via pandoc. PDF output can include inline truecolor image art, and scanned documents are supported with OCR
- Lightning-fast keyboard based navigation - Vim-inspired keybindings
- Powerful search - Find anything instantly, highlight important passages, add bookmarks
- Never lose your place - Automatic progress saving
- Extensible workflows - Execute commands directly from copied text
- Respects your privacy - Run locally without server, or selfhost the sync server
Quick start guide
cargo install --locked hygg
hygg doc.pdf
For further install instructions read the Getting started page
Features
Core Reading Experience
- Minimalist interface - Nothing between you and your content
- Smart text justification - Perfectly formatted for your terminal width
- Inline PDF images - Render embedded PDF raster images as colored terminal art alongside extracted text
- Vim keybindings - Navigate with the efficiency you already know
- Visual selection - Select, copy, highlight text
- Bookmarks - Set bookmark points and jump between them instantly
- Persistent - Progress and bookmarks persist
Advanced Workflows
- Command execution - Run shell commands from copied text, also works for previous command output
- Split view - View command output alongside your document
- Interactive tutorial - Learn everything in under 5 minutes
- Cross-platform - Works on Linux, macOS, and Windows
Roadmap
- Plain text format support
- PDF format support
- Inline colored PDF image rendering
- EPUB format support
- Convert scanned documents and images to plain text with ocrmypdf
- Auto saving progress
- Integrated command line with vim like commands
- Text selection and yanking
- Execute commands from yanked text
- Text highlighting
- Bookmarks
- Interactive tutorial
- Self hosted sync server for docs, progress, bookmarks, highlights and notes
- Offline PWA web client
- Start screen to show overview of documents and progress
- Natural sounding ai voice model for text to speech narration
- Reading statistics and insights
- Minimal build feature flag, for only basic converters, no server integration and no ai
- Run all inference directly in rust no external runtime deps
- Support more ebook and document formats
- AI-powered document summarization
Documentation
Visit the Documentation
Community
hygg is built by readers, for readers. Join our growing community:
Contributors
Made with contrib.rocks.
Licensing
hygg is a multi-license workspace — each crate declares its own license, and there is no single project-wide license see LICENSING.md.
Contributions are accepted under the project's Contributor License Agreement (implicit on submission); see CONTRIBUTING.