Register Guidelines E-Books Today's Posts Search

Go Back   MobileRead Forums > E-Book Software > Calibre > Plugins

Notices

Reply
 
Thread Tools Search this Thread
Old Yesterday, 04:58 PM   #1
npapadacis
Junior Member
npapadacis began at the beginning.
 
Posts: 6
Karma: 10
Join Date: Apr 2026
Device: Kindle
[GUI Plugin] Streamer - RSVP Speed Reader plugin for Calibre

Hi all,

I've been working on an RSVP (Rapid Serial Visual Presentation) speed reader that works both as a Calibre plugin and a standalone desktop app. Thought I'd share it here.

What is it?

Streamer displays words one at a time at a fixed screen position, eliminating eye movement and allowing comfortable reading at 300–800+ WPM. Each word is aligned at its Optimal Recognition Point (ORP) - the character where your eye naturally fixates - using pixel-accurate font metrics rather than the monospace hack most RSVP readers use.

Key features:
  • Page view - browse your book with full rich text rendering (bold, italic, images) before starting speed reading. Double-click any word to begin reading from that point.
  • Spritz-style ORP guides - horizontal lines with triangular notch markers pointing at the focus character, configurable (notches / lines / none)
  • Adaptive word timing - 12 heuristics adjust display duration per word: proper nouns (+50%), numbers (+25%), hyphenated compounds (+40%), punctuation pauses, ellipsis dramatic pause, function word speed-up, and more
  • Speed curves - automatic ease-in when you start reading (ramps from 40% to full speed over the first 10 words), ease-out approaching chapter boundaries
  • 3-2-1 countdown transition before reading begins
  • Sentence context - previous words accumulate above the current word with word wrapping, so you don't lose your place
  • Per-book profiles - your reading position, WPM, and chunk size are saved per book and restored when you reopen it
  • Chapter sidebar - clickable chapter list with keyboard navigation
    Progress bar with chapter boundary tick marks and click-to-seek
  • Three themes - Dark, Light, and Warm (pale book-page yellow)
  • Configurable everything - settings dialog with tabs for appearance (guide style, ORP colour, context lines), reading (speed curves, countdown), and timing heuristics (every multiplier adjustable)
  • Multi-format - epub, mobi, azw, azw3, txt, html, fb2 (Calibre handles conversion for other formats)
  • 1/2/3 word display modes - chunked display with timing that scales proportionally

Calibre integration:

Install the plugin, add "Speed Read" to your toolbar, select a book, click the button. Non-epub formats are automatically converted via Calibre's pipeline. Bookmarks persist between sessions using Calibre's book ID, so they survive library moves. Full feature parity with the standalone version, same menus, settings, themes, keyboard shortcuts.

Keyboard shortcuts:

Code:
Key        Action
Space      Play / Pause
← / →      Previous / Next sentence
[ / ]      Previous / Next chapter
P          Toggle page view / speed read
C          Toggle chapter sidebar
?          Keyboard shortcuts overlay
Installation:

Download Streamer.zip from [link]
In Calibre: Preferences → Plugins → Load plugin from file → select the zip
Restart Calibre
Right-click toolbar → Add your own buttons → add "Speed Read"
A standalone version (no Calibre needed) is also available as a Windows executable.

Tech details for the curious:
  • Python 3.10+ / PySide6 (standalone) / PyQt6 (Calibre) via compatibility shim
  • Pure Python timing engine with no GUI dependencies. All word timing heuristics are in a single testable module
  • 127 unit tests

Would love to hear any feedback. Any features you'd want to see?

PayPal Donate
Attached Files
File Type: zip Streamer.zip (267.4 KB, 30 views)
npapadacis is offline   Reply With Quote
Old Yesterday, 05:01 PM   #2
npapadacis
Junior Member
npapadacis began at the beginning.
 
Posts: 6
Karma: 10
Join Date: Apr 2026
Device: Kindle
Post for Test version

Placeholder post for test versions.
npapadacis is offline   Reply With Quote
Old Yesterday, 09:48 PM   #3
Comfy.n
want to learn what I want
Comfy.n ought to be getting tired of karma fortunes by now.Comfy.n ought to be getting tired of karma fortunes by now.Comfy.n ought to be getting tired of karma fortunes by now.Comfy.n ought to be getting tired of karma fortunes by now.Comfy.n ought to be getting tired of karma fortunes by now.Comfy.n ought to be getting tired of karma fortunes by now.Comfy.n ought to be getting tired of karma fortunes by now.Comfy.n ought to be getting tired of karma fortunes by now.Comfy.n ought to be getting tired of karma fortunes by now.Comfy.n ought to be getting tired of karma fortunes by now.Comfy.n ought to be getting tired of karma fortunes by now.
 
Posts: 2,084
Karma: 7956099
Join Date: Sep 2020
Device: none
Quote:
Originally Posted by npapadacis View Post

Would love to hear any feedback. Any features you'd want to see?
It works fine, congrats! I find the plugin interface very interesting. One feature I can always appreciate is to set the body width like... max-width 650px. I do something like this a lot when user-styling web pages. IMO, it needs geometry persistence and portable install awareness. BTW, I got the below message the first time I tried to open config folder

Spoiler:
Traceback (most recent call last):
File "calibre_plugins.streamer.ui.settings_dialog", line 259, in _open_config_folder
FileNotFoundError: [WinError 2] The system cannot find the file specified: 'C:\\Users\\user\\AppData\\Roaming\\calibre-ebook.com\\calibre\\streamer'
Comfy.n is offline   Reply With Quote
Old Today, 03:59 AM   #4
npapadacis
Junior Member
npapadacis began at the beginning.
 
Posts: 6
Karma: 10
Join Date: Apr 2026
Device: Kindle
Thanks for the feedback. I guess I fell into that trap of "well it works on my computer" :-)

I'll take a look at removing size defaults and adding geometry saving and monitor awareness.

The error will be because the folder doesn't exist at that moment, but you are right, it's also the incorrect folder for portable mode. I'll pull through the calibre config path in Calibre mode.
npapadacis is offline   Reply With Quote
Old Today, 05:01 AM   #5
npapadacis
Junior Member
npapadacis began at the beginning.
 
Posts: 6
Karma: 10
Join Date: Apr 2026
Device: Kindle
v1.1.0
Changelog
Window geometry persistence, portable Calibre config, and flexible sizing
  • Save/restore window size, position, monitor, and maximized state across sessions
  • Use Calibre's config_dir for portable install support instead of QStandardPaths
  • Ensure config folder exists before opening it in settings dialog
  • Screen-relative default window size (60% width, 85% height, capped)
  • Split controls into two rows and lower minimum constraints so the window can shrink to 450px wide
  • Persist chapter sidebar open/closed state in settings
Attached Files
File Type: zip Streamer.zip (269.6 KB, 1 views)
npapadacis is offline   Reply With Quote
Reply


Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
[Request for 3rd party plugin source] RSVP/SPRITZ used before fotpfan Plugins 7 Yesterday 05:34 PM
[GUI Plugin] Noosfere_util, a companion plugin to noosfere DB lrpirlet Plugins 2 08-18-2022 03:15 PM
[GUI Plugin] BiB/i EPUB reader plug-in for calibre dcato Plugins 0 11-30-2016 02:56 PM
[GUI Plugin] Plugin Updater **Deprecated** kiwidude Plugins 159 06-19-2011 12:27 PM


All times are GMT -4. The time now is 08:55 AM.


MobileRead.com is a privately owned, operated and funded community.