Features: vim-style navigation (hjkl, /, n/N, Ctrl+o/Ctrl+i jump history), bookmarks, table of contents, visual mode with yank-to-clipboard, regex search across chapters, and per-book width/position persistence via SQLite.
Two features I'm particularly happy with:
- Text-to-speech: Press ! and it reads the book aloud, sentence by sentence (~300-400 chars per chunk), with the current passage underlined. Uses edge-playback (Microsoft Edge TTS) by default, configurable to espeak, say, or any custom command. Smart scrolling keeps the spoken text visible without jumping around unnecessarily. - Dictionary lookup: Select a word in visual mode and press d for dictionary (auto-detects wkdict/sdcv/dict) or p for Wikipedia summary. Configurable to any custom command.
Full disclosure: this project is almost entirely AI-built. I don't know Rust — I described what I wanted and Claude Code wrote the implementation. The fact that a non-Rust-programmer can build and iterate on a 5000+ line Rust TUI application through conversation is, honestly, kind of amazing. Every feature, bug fix, and refactor in this project went through that workflow.