Releases: bugzmanov/bookokrat
v0.3.8
Release 0.3.8
Main Changes
- DJVU support: open DJVU files in Bookokrat with PDF-style rendering, search, normal mode, and table of contents support.
- Revived Windows support.
- Improved terminal detection: better Kitty protocol detection for unknown and Kitty-compatible terminals.
- More robust title extraction for cleaner book metadata in the library and book stats.
- Navigation improvements: better
Ctrl+d,Ctrl+u,Ctrl+f, andCtrl+bbehavior, plus a full-page navigation off-by-one fix. - Popup and edge-case cleanup: shared popup behavior and various corner-case fixes across the app.
v0.3.7
Release 0.3.7
Main Changes
- Dual page PDF view: side-by-side page rendering for wider terminals.
- PDF original rendering mode
-
Book name displayed in the terminal title.
-
Modal window overlay for Kitty terminal: proper overlay rendering for PDF popups.
-
PDF rendering fixes: stretching glitch, spilling over app boundaries, and hood messages for render status.
-
Improved terminal detection: better protocol detection for unknown terminals, deadlock fix in WezTerm.
-
Low color palette support: underline cursor and visual cues for terminals with smaller palettes.
-
EPUB images: cache invalidation fix and image rendering glitch fix.
-
Properly restore terminal state on exit and panic.
-
test improvements.
v0.3.6
Release 0.3.6
Main Changes
- Lookup command support: run external dictionary/lookup tools from selected text (
Space+l), with popup or fire-and-forget display modes. - Reading mode navigation: added
{and}support for paragraph-style movement. - Temp/cache behavior cleanup: avoids creating temporary directories unnecessarily.
- EPUB rendering fix: improved handling of HTML
<section>blocks. - Settings persistence improvements: targeted config updates now preserve manual YAML edits/comments while still updating app-managed keys.
v0.3.5
Release 0.3.5
Main Changes
- Searchable Help popup: help is now easier to navigate and find commands quickly.
- New keyboard shortcuts: added
Ctrl+b/Ctrl+fandCtrl+l/Ctrl+qsupport. - EPUB comments overhaul: redesigned comment UX with follow-up regression fixes.
- Rendering fixes:
- fixed mojibake/text-encoding issues
- improved EPUB image rendering inside containers
- XDG-compliant storage paths: state/cache directories now follow XDG conventions.
- Visual polish: multiple UI consistency improvements across the app.
v0.3.4
Bookokrat 0.3.4 Release Notes
This release focuses on major PDF reader UX and terminal rendering improvements, plus broader release platform support.
Highlights
- Non-Kitty PDF zoom and pan improvements (iTerm2/WezTerm path), including horizontal viewport/pan support and better tile cropping/alignment during zoomed navigation.
- PDF comments UX overhaul across zen and non-zen modes, with improved comment navigation, read-only preview flow, faster jump-to-comment viewport behavior, and better modal placement near selected content.
- Kitty modal layering improvements via z-index overlays, so PDF modals (comment editor and go-to-page) render with reliable opaque backgrounds over image content.
- New PDF image inversion toggle (
i) with bookmark persistence, so inversion state is restored when reopening a document. - UI refresh for the PDF jump/go-to-page modal for improved readability and consistency with other overlays.
- GitHub release pipeline now includes Ubuntu ARM64 artifacts.
v0.3.3
Bookokrat 0.3.3 Release Notes
This release focuses on terminal compatibility: support for tmux and Warp terminal
Highlights
- Improved tmux compatibility for kitty & iterm2 graphics protocol (including passthrough handling and pane-aware placement).
- Warp terminal onboarding
- PDF copy/extract bug fix for
Ctrl+C. - Small quality-of-life fixes, including:
- PDF fit-width zoom shortcut support (
Z) alongside existing fit-height (z). - Zoom HUD visibility improvements and related documentation updates.
- Defaulting PDF render mode to
Scrollon terminals that support scroll mode (Kitty/Ghostty).
- PDF fit-width zoom shortcut support (
v0.3.2
Bookokrat 0.3.2 Release Notes
This release fixes a shared memory (SHM) leak in the PDF renderer's Kitty graphics pipeline.
v0.3.1
Bookokrat v0.3.1 Release Notes
Release Date: February 6, 2026
A quality-of-life release focused on terminal compatibility and visual customization.
New Features
Transparent Background Support
Bookokrat now supports transparent backgrounds, allowing your terminal's background (wallpaper, blur effects, etc.) to show through the reader interface.
- Enable via Themes popup (
Space+t) - Works in both EPUB and PDF modes (PDF "paper" background will still be rendered)
- Pairs well with terminals that support background transparency/blur (Kitty, Ghostty, WezTerm, iTerm2)
New Themes
Two new Base16 themes have been added:
- Rosepine Moon: A romantic palette with rose, gold, and pine tones. Soft and easy on the eyes for extended reading sessions.
- Moonfly: Deep black background with vibrant accent colors. The signature blue provides excellent contrast for focused reading.
PDF Enhancements
- Chapter text copy: Copy the full text of the current PDF chapter.
- Improved TOC detection: More reliable table-of-contents parsing across PDFs.
- PDF prefix in book list: PDF entries are now clearly labeled in the library list.
Bug Fixes & Improvements
Konsole Terminal Compatibility
Fixed image rendering issues in Konsole (KDE's terminal emulator). Konsole implements a subset of the Kitty graphics protocol, which was causing rendering artifacts when navigating between pages. This fix ensures images are properly cleared before re-rendering.
Note: This is detected automatically via the KONSOLE_VERSION environment variable.
Reading UX Improvements
- Comments UI polish: Better rendering and layout for EPUB comments.
- PDF pan position saved: Bookmarking now preserves the PDF pan position for accurate return.
Documentation
- Updated docsite with new visuals, demos, and help screenshots.
Terminal Support Update
| Terminal | EPUB | |
|---|---|---|
| Kitty | Full | Full |
| Ghostty | Full | Full |
| WezTerm | Full | Almost full (no scroll mode) |
| Konsole | Full | Improved (this release) |
| iTerm2 | Full | Limited (no comments/normal mode) |
| Other | Sixel/Halfblock fallback | Sixel/Halfblock fallback |
v0.3.0
Bookokrat v0.3.0 Release Notes
Release Date: February 2026
This is a major release introducing PDF support alongside the existing EPUB reader.
License Change: AGPL-3.0
Starting with v0.3.0, Bookokrat is licensed under AGPL-3.0 (previously MIT).
Ooof. This change was necessary because:
- MuPDF (the PDF rendering library) is licensed under AGPL-3.0
- epub-rs (the EPUB parsing library) is also licensed under AGPL-3.0
Honestly, re-creating the required EPUB support in a clean-room fashion is doable, but MuPDF is just too good and feature-rich to pass up.
To comply with these licensing terms and maintain a consistent license across the project, Bookokrat has adopted AGPL-3.0.
In addition, a lot of inspiration on how to render PDFs in Kitty was taken from the tdf project, which is also AGPL-3.0.
For users, this means:
- You can still freely use, modify, and distribute Bookokrat
- If you distribute modified versions or run it as a service, you must make the source code available under AGPL-3.0
Headline Feature: PDF Support
Bookokrat now supports PDF documents with high-performance rendering optimized for terminal display.
PDF Features
- High-Performance Rendering: Background worker pool with MuPDF for parallel page rendering (inspired by tdf)
- Kitty Graphics Protocol: SHM-based image transfer enabling smooth 60fps rendering in Kitty terminal (inspired by tdf)
- Normal Mode: Vim-style cursor navigation within PDF pages
- Comments/Annotations: Add, edit, and delete comments on PDF pages, with annotation export support
- Table of Contents: PDF outline parsing with hierarchical navigation
- Theme Support: Full Base16 theme support in PDF mode—colors are applied to rendered pages
- Zoom Levels: Multiple zoom levels with smooth viewport updates
Notes & Warnings
RAM Usage: PDF rendering requires significantly more memory than EPUB reading. Expect 300–700 MB of additional RAM usage when viewing PDFs due to page caching and image buffers. If you primarily read EPUBs and want to minimize memory footprint, PDF support can be disabled in the settings window, bringing RAM utilization down to approximately 50 MB.
Feedback Welcome: PDF support is new in this release. If you encounter any issues with PDF viewing—rendering glitches, performance problems, or unexpected behavior—please report them at github.com/bugzmanov/bookokrat/issues.
Terminal Support for PDF
- Kitty / Ghostty: Full support with scroll mode (recommended)
- WezTerm: Almost full support; page scroll mode is not supported
- iTerm2: Commenting and annotations are not supported
- Other terminals: Sixel/Halfblock fallback where available, with the caveat that halfblocks are nearly unusable for PDFs
New Features
SVG Support in EPUB
EPUB documents containing SVG images are now rendered correctly.
Terminal Capability Detection
Unified terminal detection system that automatically selects optimal rendering protocols and feature sets based on your terminal emulator.
Settings Popup
New settings interface with PDF-specific configuration options.
Improvements & Bug Fixes
- Better arrow key support in PDF mode
- Modal window consistency across all popups
- Improved Help window
- Better anchor tracking for navigation
- Fixed Wezterm rendering glitches
- Fixed Kitty memory leak
- Build performance optimizations
Dependency Updates
Ratatui 0.30.0
Upgraded to ratatui 0.30.0 with underline-color feature support.
Vendored tui-textarea
The tui-textarea crate has been vendored into vendor/tui-textarea as the original crate is unmaintained and fell out of sync with ratatui. This ensures compatibility with the latest ratatui version.
Upgrade Note: Users upgrading from v0.2.x will find all existing bookmarks, comments, and settings preserved. The PDF feature is optional and requires an explicit feature flag to build.
v0.2.4
Release 0.2.4
New Features
Calibre Library Integration
- Automatically detects and reads books from Calibre library when running from a Calibre library directory
- Parses Calibre's
metadata.opffiles to extract book titles and authors - Displays books with proper metadata instead of raw filenames
Comments/Annotations Export
- New export functionality for comments and annotations (
Space+efrom Comments Viewer),
exports include book title, chapter context, highlighted passages, and comment text
Bug fixes
- Images inside links now are being rendered
- Normal Mode Link Navigation: Press
Enteron a link in normal mode to follow it - Zen Mode Search hints: now display on the reader border (bottom-left) when searching in zen mode
- Tab key is now ignored in zen mode to prevent "stuck" feeling when navigation panel is hidden
- Jump List Enhancements:
Ctrl+o/Ctrl+inow properly track navigation through local links
Misc
- Added
--versioncommand line flag to display version information