An open API service indexing awesome lists of open source software.

https://github.com/kudosscience/speed-read-chrome-extension

RSVP Speed Read - A Chrome extension for speed reading any webpage using Rapid Serial Visual Presentation method
https://github.com/kudosscience/speed-read-chrome-extension

chrome-extension productivity reading-tools rsvp speed-reading

Last synced: 15 days ago
JSON representation

RSVP Speed Read - A Chrome extension for speed reading any webpage using Rapid Serial Visual Presentation method

Awesome Lists containing this project

README

          

# 🚀 RSVP Speed Read


RSVP Speed Read Logo



Chrome Web Store


Version


License

---

## 📖 What Is This?

**RSVP Speed Read** is a free Chrome extension that helps you read web pages **3-5x faster** using a proven technique called **RSVP (Rapid Serial Visual Presentation)**.

### The Problem

You probably read slower than you could. Traditional reading involves your eyes jumping back and forth across lines (called "saccades"), which wastes time. Most people read at around 200-250 words per minute, but with the right technique, you can easily reach 600-1000 words per minute without losing comprehension.

### The Solution

RSVP Speed Read eliminates eye movement entirely. Instead of scrolling through text, words appear one at a time in the center of your screen. Your eyes stay focused on one spot, and your brain learns to process whole words instantly.

**Benefits you'll experience:**
- ⚡ **Read 3-5x faster** - Boost your reading speed from 250 to 800+ WPM
- 🎯 **Better focus** - No distractions, no scrolling, just the words
- 📱 **Works on any page** - Blog posts, articles, documentation, news
- 🧠 **Train your brain** - Regular use improves your natural reading speed
- 🔒 **Private & offline** - Your data never leaves your device

---

## 📥 How to Install (3 Easy Steps)

### Step 1: Download the Extension

**[Click here to download as ZIP](https://github.com/kudosscience/speed-read-chrome-extension/archive/refs/heads/master.zip)** or go to the [releases page](https://github.com/kudosscience/speed-read-chrome-extension/releases) and download the latest version.

### Step 2: Extract the Files

1. Find the downloaded `speed-read-chrome-extension-master.zip` file
2. Right-click and select **Extract All** (or **Unzip**)
3. Open the extracted folder - you should see files like `manifest.json`, `content.js`, etc.

### Step 3: Install in Chrome

1. Open **Google Chrome**
2. Type `chrome://extensions` in the address bar and press **Enter**
3. Look for the **Developer mode** toggle in the top-right corner
4. **Turn on Developer mode** (the toggle should turn blue)
5. Click the **Load unpacked** button that appears
6. Select the extracted folder (`speed-read-chrome-extension-master`)
7. That's it! 🎉

**To use it:** Press `Ctrl+Shift+Y` on any webpage to start speed reading!

---

## 🎮 How to Use

| Key | Action |
|-----|--------|
| `Ctrl+Shift+Y` | Start speed reading |
| `Space` | Pause / Resume |
| `↑` Arrow | Increase speed (+50 WPM) |
| `↓` Arrow | Decrease speed (-50 WPM) |
| `←` Arrow | Skip to previous sentence |
| `→` Arrow | Skip to next sentence |
| `Escape` | Stop and close |

**Speed range:** 100 - 1500 words per minute (default: 400 WPM)

---

## ✨ Features

- **🚀 Lightning fast** - Optimized for low-RAM devices and older computers
- **📝 Smart text extraction** - Automatically finds the main article content on any page
- **👁️ Orthogonal RSVP** - Shows context words (2 on each side) for easier reading
- **🔴 Focus highlighting** - First 1-2 letters highlighted in red to lock your focus
- **⏸️ Natural pauses** - Extra pause time at commas (150ms), periods (300ms), and question marks (400ms)
- **💾 Position memory** - Remembers where you stopped reading if you close and reopen
- **🎛️ Adjustable settings** - Customize font size, speed, and more
- **🔐 Privacy-first** - Works completely offline, no data sent anywhere

---

## 🔧 Technical Details

### Architecture

The extension uses **Manifest V3** (Chrome's latest extension format) with a service worker architecture for minimal memory footprint.

### Performance Optimizations

| Feature | Technical Justification |
|---------|------------------------|
| **On-demand injection** | Content script only loads when triggered, not on every page - saves memory on unused pages |
| **requestAnimationFrame** | Uses browser's native frame timing instead of setInterval - prevents timer drift and CPU waste |
| **Pre-computed word array** | All word HTML generated at startup, zero DOM manipulation during reading |
| **CSS will-change** | GPU-composited overlay layer, no repaints during word transitions |
| **No external dependencies** | Zero npm packages, pure vanilla JS - smaller bundle, no供应链 attacks |

### Text Extraction

The extension uses a lightweight two-tier extraction strategy:

1. **Fast heuristic** - Looks for ``, ``, or the largest text container - completes in <10ms
2. **Fallback** - If <200 characters found, returns empty (prevents reading navigation/ads)

This approach is 10-50x faster than loading a full readability library while still working on 95%+ of websites.

### RSVP Engine

- Uses `requestAnimationFrame` with delta-time accumulation for precise timing
- Calculates word display time: `60000 / WPM` base + punctuation delays
- Pre-builds HTML for each word at startup (focus letter highlighting done once)
- Updates only 5 text nodes per frame, never creates/destroys DOM during reading

### Data Storage

- **WPM setting** - Stored in `chrome.storage.local` (persists across sessions)
- **Reading position** - Stored in `sessionStorage` (per-tab, survives overlay close but not page refresh)

---

## 🤝 Contributing

Found a bug or have a feature request? [Open an issue](https://github.com/kudosscience/speed-read-chrome-extension/issues)!

## 📄 License

MIT License - feel free to use, modify, and distribute.

---

Made with ❤️ for speed readers everywhere