Skip to content

chrisurline/rapid-read

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RapidRead

A minimal macOS speed reader that uses RSVP (Rapid Serial Visual Presentation). Select text anywhere, press a hotkey, and read it word-by-word in a floating frosted-glass overlay.

RapidRead demo

Requirements

  • macOS 13+
  • Swift 5.9+

Install & Run

git clone https://github.com/chrisurline/rapid-read.git
cd rapid-read
swift run

The app runs as a menu bar utility (no dock icon). Look for the icon in your menu bar.

Setup

  1. Free up your hotkey — the default is ⌘Space, so disable Spotlight's shortcut: System Settings → Keyboard → Keyboard Shortcuts → Spotlight → uncheck "Show Spotlight search" (Or configure a different hotkey and skip this step.)

  2. Grant Accessibility permissions The app will prompt on first launch. Required to capture the hotkey and copy selected text.

Usage

  1. Select text in any app (browser, editor, PDF viewer, etc.)
  2. Press your hotkey (default ⌘Space) — a reader appears near your cursor
  3. Press the hotkey again or Esc to dismiss
  4. Clicking outside the reader also dismisses it

Controls

Key Action
Space Pause / resume (restart if finished)
/ Skip back / forward 5 words
⌥← / ⌥→ Skip back / forward 10 words
/ Speed ±25 WPM
Esc Dismiss
Click Pause / resume
Drag Move the reader window

Configuration

Settings are stored at ~/.config/rapidread/settings.json (created on first launch). Open it from the menu bar icon → "Open Settings…"

{
  "corner_radius" : 16,
  "font_size" : 42,
  "hotkey" : "command+space",
  "skip_large" : 10,
  "skip_small" : 5,
  "start_delay" : 0.5,
  "window_height" : 160,
  "window_width" : 600,
  "wpm" : 425,
  "wpm_step" : 25
}
Setting Description
wpm Starting words per minute
wpm_step How much ↑/↓ adjusts speed
font_size Word display size in points
start_delay Seconds before playback begins (first word shows immediately)
hotkey Global trigger shortcut (see below)
window_width / window_height Reader panel dimensions
corner_radius Panel corner rounding
skip_small / skip_large Words skipped by arrow / ⌥+arrow

Changes take effect on next launch.

Hotkey

The hotkey setting is a +-separated string of modifiers and a key:

modifier+modifier+key

Modifiers: command (or cmd), shift, option (or opt/alt), control (or ctrl)

Keys: any letter or number, space, return, tab, delete, escape, f1f12, left/right/up/down, common punctuation

Examples:

"hotkey": "command+space"
"hotkey": "command+shift+e"
"hotkey": "option+r"
"hotkey": "control+shift+f2"

If the value can't be parsed, it falls back to command+space.

About

A minimal macOS speed reader that uses RSVP (Rapid Serial Visual Presentation). Select text anywhere, press a hotkey, and read it word-by-word in a floating frosted-glass overlay.

Resources

Stars

Watchers

Forks

Contributors

Languages