A blazing fast, terminal-native speed typing test built in Rust.
cargo install KeyStrikeRequires Rust 1.75+. Install Rust at https://rustup.rs
KeyStrike # 30s time mode, english words
KeyStrike -m time -d 60 # 60 second test
KeyStrike -m words -w 50 # 50 word test
KeyStrike -l english_1k # use 1000-word list
KeyStrike --leaderboard # view saved scores
KeyStrike --reset # clear all scores- Time mode (15s / 30s / 60s / 120s) and Words mode (10 / 25 / 50 / 100)
- Live WPM display updating every 500ms
- Character-level real-time feedback as you type
- Net WPM, raw WPM, accuracy, and consistency score
- WPM over time chart on the results screen
- Local leaderboard persisted between sessions
- Personal best detection
- Three word lists: 200, 1000, and 5000+ words
- Tab to instantly restart with a new word set
- Zero external dependencies at runtime — single binary
Scores are saved to:
- Linux:
~/.config/KeyStrike/scores.json - macOS:
~/Library/Application Support/KeyStrike/scores.json - Windows:
%APPDATA%\KeyStrike\scores.json
| Key | Action |
|---|---|
[enter] |
Start test / Play again |
[tab] |
Restart with new words |
[esc] |
Back to menu |
[t] |
Toggle mode (time/words) |
[1-4] |
Select duration or word count |
[l] |
View leaderboard |
[q] |
Quit |
[ctrl+c] |
Force quit |
PRs welcome. Open an issue first for major changes.
MIT