- A reference sentence is displayed on screen for the user to type
- Texts are hardcoded directly in the application
- A random sentence is selected at the start of each new game
- A text input allows the user to type freely
- Pressing Space validates the current word and moves to the next
- The input field resets automatically after each word
- Each character is compared against the expected text in real time
- Each word is classified as:
- Correct — typed without any mistake
- Incorrect — contains at least one error
- Not yet typed — waiting to be entered
- The current word is visually highlighted at all times
- Each game lasts exactly 60 seconds
- The countdown starts on the first keystroke
- The game ends automatically when time runs out
- Input is locked once time is up
- A summary screen displays:
- Total characters typed
- Number of correct words
- Number of incorrect words
| Feature | Description |
|---|---|
| Typing Speed | Calculates your speed in characters per second |
| Accuracy | Displays your accuracy as a percentage |
| Visual Feedback | Color-coded words (correct / incorrect) with current word highlight |
| Replay Mode | A "New Game" button fully resets the app state |
git clone https://github.com/PerretWilliam/typefast.git
cd typefast# With npm
npm install
# Or with Bun
bun installnpm run devnpm run buildnpm run preview- Launch the app in development mode
- Read the reference text displayed on screen
- Start typing — the timer begins on your first keystroke
- Press Space to validate each word and move to the next
- Keep going until the 60 seconds are up — input will lock automatically
- Check your stats in the end-of-game summary
- Click "New Game" to play again with a fresh sentence
Made by William Perret
Website · GitHub · LinkedIn · Instagram · Buy Me a Coffee