| Crates.io | bookokrat |
| lib.rs | bookokrat |
| version | 0.2.4 |
| created_at | 2025-10-28 21:13:29.646002+00 |
| updated_at | 2026-01-24 19:43:00.057749+00 |
| description | A terminal-based EPUB Books reader |
| homepage | https://bugzmanov.github.io/bookokrat/ |
| repository | https://github.com/bugzmanov/bookokrat |
| max_upload_size | |
| id | 1905676 |
| size | 15,931,626 |
Bookokrat is a terminal-based EPUB reader with a split-view library and reader, full MathML and image rendering, automatic bookmarks, inline annotations, and customizable themes.
.epub directories, including Apple Books exports) without repackaging.brew install bookokrat
Install from the AUR using your preferred AUR helper:
yay -S bookokrat-bin
or
paru -S bookokrat-bin
Download from GitHub Releases:
# x86_64 (Intel/AMD)
curl -LO https://github.com/bugzmanov/bookokrat/releases/latest/download/bookokrat-v0.2.2-x86_64-unknown-linux-musl.tar.gz
tar -xzf bookokrat-v0.2.2-x86_64-unknown-linux-musl.tar.gz
sudo mv bookokrat /usr/local/bin/
Build from source. Requires Rust and a C compiler/linker.
Linux (Ubuntu/Debian):
sudo apt update && sudo apt install build-essential
Linux (Fedora/RHEL):
sudo dnf install gcc make
macOS:
xcode-select --install
Windows: Install Visual Studio Build Tools with the "Desktop development with C++" workload.
cargo install bookokrat
Navigate to a directory with EPUB files and run bookokrat. Use j/k to navigate, Enter to open a book, and ? for help.
You can also open a specific file or start in zen mode, but this is not the main flow:
bookokrat path/to/book.epub
bookokrat path/to/book.epub --zen-mode
Bookokrat follows Vim-style keybindings throughout the interface for consistent, efficient navigation.
q - Quit applicationTab - Switch focus between library/TOC and content panelsEsc - Clear selection/search or dismiss popupsCtrl+z - Toggle zen mode (hide sidebar/status bar)? - Show help screenSpace+t - Open theme selector+ / - - Increase/decrease content marginsj/k - Move down/up (works in all lists and reader)h/l - Collapse/expand in TOC; previous/next chapter in readerCtrl+d / Ctrl+u - Scroll half-page down/upgg - Jump to topG - Jump to bottomCtrl+o / Ctrl+i - Jump backward/forward in history/ - Start search (filter in library/TOC; search in reader)n / N - Jump to next/previous matchSpace+f - Reopen last book-wide searchSpace+F - Start fresh book-wide searchEnter - Open highlighted book or headingh / l - Collapse/expand entryH / L - Collapse/expand allh / l - Previous/next chapterSpace+s - Toggle raw HTML viewSpace+c - Copy entire chapterSpace+z - Copy debug transcriptc or Ctrl+C - Copy selectionp - Toggle profiler overlayn - Toggle normal mode (Vim motions, visual selection, yanking)v / V (normal mode) - Enter visual character/line selection; y to yank, Esc to exitEnter (normal mode) - Open link under cursora - Create or edit comment on selectiond - Delete comment under cursorSpace+e - Export all annotations to Markdown (in comments viewer)Space+h - Toggle reading history popupSpace+d - Show book statistics popupSpace+a - Open comments/annotations viewerSpace+o - Open current book in OS viewerEnter - Open image popup (when on image) or activate popup selectionAll popups (search results, reading history, book stats) support:
j/k - Move up/downCtrl+d / Ctrl+u - Half-page scrollgg / G - Jump to top/bottomEnter - Activate selectionEsc - Close popupBookokrat automatically selects the best image protocol for your terminal:
| Terminal | Protocol | Reason |
|---|---|---|
| Kitty | Kitty | Native support |
| Ghostty | Kitty | Native support |
| iTerm2 | Sixel | Native protocol causes flickering; Kitty buggy in recent betas |
| WezTerm | iTerm2 | Kitty is buggy (#986); Sixel broken on Windows (#5758); some flickering expected |
| Alacritty | Halfblocks | No graphics protocol support (#910) |
| Others | Auto-detected | Kitty > Sixel > iTerm2 > Halfblocks |
Experience by terminal:
If images look wrong, check bookokrat.log for the detected protocol. Experiencing issues not covered above? Just open an issue — happy to help!
This project is based on bookrat by Dmitry Sobolev, licensed under the MIT License.