A web-based speed reading application that helps users improve their reading speed and comprehension. The application supports plain text, PDF, and EPUB files, offering a distraction-free reading experience with customizable settings.
- Multiple File Formats: Support for plain text, PDF, and EPUB files
- Customizable Reading Experience:
- Adjustable words per minute (WPM) setting
- Configurable word chunk size
- Customizable font size and family
- Adjustable content height
- Multiple color themes
- Progress bar customization
- Reading Controls:
- Play/Pause functionality
- Progress tracking
- Chapter navigation for EPUB files
- Rewind and skip controls
- Keyboard shortcuts
- User Interface:
- Clean, distraction-free design
- Dark/Light theme support
- Mobile-responsive layout
- Context menu for quick actions
- Additional Features:
- Reading history
- Drag and drop file upload
- Progress saving for EPUB books
- Tooltips for better usability
Space: Play/Pause reading←/→: Skip words (hold for faster skipping)Enter: Start readingn,Backspace,Delete,Escape: Return to text inputh: Show reading historys: Open settings1-5: Quick select from reading history
The application includes several color themes to suit different reading preferences:
- Default
- Sepia
- High Contrast
- Blue Light Filter
- Mint
- Sunset
- Night Owl
- Coffee
- Ocean
- Forest
- Rose
- Lavender
- Terminal
- Built with vanilla JavaScript
- Uses EPUB.js for EPUB file handling
- PDF.js for PDF file processing
- DOMPurify for text sanitization
- Local storage for settings and progress persistence
- Responsive design with mobile support
The application is compatible with modern browsers that support:
- ES6+ JavaScript
- File API
- Local Storage
- CSS Variables
- SVG
- Maximum file size: 10MB
- Supported file types:
- Plain text (.txt)
- PDF files (.pdf)
- EPUB files (.epub)
- Clone the repository
- Install dependencies (if any)
- Serve the application using a web server
- Access the application through your web browser
- Requires /speed-reader/add and /speed-reader/prev to add and provide up to 5 previous sample tests
- Open the application in your web browser
- Either:
- Paste text directly into the input area
- Drag and drop a file
- Use the context menu to upload a file
- Click "Start Reading" or press Enter
- Adjust settings as needed
- Use the controls to navigate through the text
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.