91 lines
1.7 KiB
Markdown
91 lines
1.7 KiB
Markdown
# fast_reader
|
||
|
||
Machine that aims to speed up your reading.
|
||
A cross-platform RSVP (Rapid Serial Visual Presentation) speed-reading
|
||
desktop application built with Go and Wails.
|
||
|
||
## Features
|
||
|
||
- RSVP speed reading
|
||
- Adjustable reading speed (100–1000 WPM)
|
||
- Optimal Recognition Point (ORP) highlighting
|
||
- Text input and demo text
|
||
- Playback controls
|
||
- Reading progress indicator
|
||
- Keyboard shortcuts
|
||
- Cross-platform desktop support
|
||
|
||
## Tech Stack
|
||
|
||
- Go
|
||
- Wails v2
|
||
- TypeScript
|
||
- Vite
|
||
|
||
## Prerequisites
|
||
|
||
- Go 1.24+
|
||
- Node.js 22+
|
||
- npm
|
||
- Wails CLI v2
|
||
|
||
For Linux development, install the Wails system dependencies:
|
||
https://wails.io/docs/gettingstarted/installation
|
||
|
||
## Getting Started
|
||
|
||
Install Wails:
|
||
|
||
go install github.com/wailsapp/wails/v2/cmd/wails@v2.10.2
|
||
|
||
Install project dependencies:
|
||
|
||
make install
|
||
|
||
Start development mode:
|
||
|
||
make dev
|
||
|
||
Build the desktop application:
|
||
|
||
make build
|
||
|
||
Run Go tests:
|
||
|
||
make test
|
||
|
||
## Docker
|
||
|
||
Build and test the Linux application in Docker:
|
||
|
||
docker build --target go-builder -t fast_reader-ci .
|
||
|
||
Export the Linux binary:
|
||
|
||
make docker-build
|
||
|
||
Note: Docker builds a Linux binary. Windows and macOS builds
|
||
should be performed on their respective operating systems or
|
||
through dedicated cross-platform build runners.
|
||
|
||
## Keyboard Shortcuts
|
||
|
||
| Key | Action |
|
||
| ------ | ------------- |
|
||
| Space | Play / Pause |
|
||
| ← | Previous word |
|
||
| → | Next word |
|
||
| R | Reset |
|
||
| Escape | Pause |
|
||
|
||
## Project Structure
|
||
|
||
app/ Wails application bindings
|
||
internal/reader/ RSVP reader engine
|
||
frontend/ TypeScript UI
|
||
build/ Wails build artifacts
|
||
|
||
## License
|
||
|
||
MIT
|