A fast, lightweight CLI tool for speed reading using the RSVP (Rapid Serial Visual Presentation) technique. Displays text one word at a time with the optimal recognition point (ORP) highlighted in red.


Features
- 🚀 Adjustable reading speed (100-1500 WPM)
- 🎯 Optimal Recognition Point highlighting
- ⏯️ Pause/resume controls
- 📊 Real-time progress tracking
- 📄 Read from text files (.txt) and EPUB books (.epub) or stdin
- ⚡ Lightweight and fast
- 🎨 Clean terminal UI with ANSI colors
Installation
Homebrew (macOS/Linux)
# Install the TUI version
brew install metcalfc/brr/brr
# Install the GUI version
brew install metcalfc/brr/grr
Quick Install (macOS/Linux)
Downloads the latest release to current directory:
# brr (TUI)
curl -sL "https://github.com/metcalfc/brr/releases/latest/download/brr_$(curl -s https://api.github.com/repos/metcalfc/brr/releases/latest | grep tag_name | cut -d'"' -f4)_$(uname -s | tr '[:upper:]' '[:lower:]')_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz" | tar -xz brr
# grr (GUI)
curl -sL "https://github.com/metcalfc/brr/releases/latest/download/grr_$(curl -s https://api.github.com/repos/metcalfc/brr/releases/latest | grep tag_name | cut -d'"' -f4)_$(uname -s | tr '[:upper:]' '[:lower:]')_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz" | tar -xz grr
From Source
# TUI version
go install github.com/metcalfc/brr@latest
# Or build both versions locally
git clone https://github.com/metcalfc/brr.git
cd brr
make build
Usage
Basic Usage
# Read a file
brr article.txt
# Read an EPUB book
brr book.epub
# Read from stdin
cat book.txt | brr
echo "Speed reading is awesome" | brr
# Specify reading speed (words per minute)
brr -w 500 article.txt
Interactive Controls
While reading:
- SPACE - Pause/play
- + or = - Increase speed by 50 WPM
- - - Decrease speed by 50 WPM
- Q - Quit
Examples
Start at 300 WPM (default):
brr sample.txt
Start at 900 WPM for experienced readers:
brr -w 900 sample.txt
Read from a pipeline:
curl -s https://example.com/article.txt | brr -w 400
How It Works
The RSVP (Rapid Serial Visual Presentation) technique works by:
- Displaying words one at a time at a fixed position
- Highlighting the Optimal Recognition Point (typically 1/3 into the word)
- Eliminating eye movement across lines and pages
- Allowing focus purely on comprehension rather than tracking
This technique can significantly increase reading speed while maintaining comprehension. Most users can comfortably read at 400-600 WPM with practice, and experienced speed readers can exceed 900 WPM.
Tips for Speed Reading
- Start at 300 WPM and gradually increase as you become comfortable
- Keep your eyes focused on the center where words appear
- Don't try to "read ahead" or look around the screen
- Practice regularly to build speed and maintain comprehension
- Take breaks during long reading sessions to avoid eye strain
Development
Running Tests
go test -v
Running Benchmarks
go test -bench=.
Viewing the Manpage
man ./brr.1
Technical Details
- Language: Go 1.21+
- Dependencies:
golang.org/x/term for terminal control
- Platforms: Linux, macOS, BSD (any UNIX with terminal support)
- Terminal Requirements: ANSI color support, raw mode capability
Contributing
Contributions are welcome! Please feel free to submit issues or pull requests.
License
MIT License - see LICENSE file for details
Author
Chad Metcalf
Inspiration
This project was inspired by this video demonstration of RSVP speed reading, which shows words presented one at a time with the optimal recognition point highlighted, starting at 300 WPM and scaling up to 900 WPM.