Skip to content

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

⌨️ MonkeyType TUI

A fast, minimal typing test that runs right in your terminal — built with Textual and styled with the Catppuccin Mocha palette.


🚀 Quick Start

Run the whole app in a single command — it downloads the script, installs the only dependency, and launches:

curl -L -o monkeytype_tui.py https://raw.githubusercontent.com/afnan-nex/monkeytype-tui/main/monkeytype_tui.py && python -m pip install --upgrade textual && python monkeytype_tui.py

✨ Features

  • 🕐 Time mode — race the clock with 15 / 30 / 60 / 120 second tests
  • 🔢 Words mode — test yourself over 10 / 25 / 50 / 100 words
  • 📊 Live stats — real-time WPM, accuracy, progress, and raw WPM while you type
  • 🎨 Catppuccin Mocha theme — the signature soft pastel dark palette
  • Instant feedback — characters color-coded as you type (green = correct, red = incorrect, yellow = upcoming)
  • 🏁 Automatic results — the results screen pops up the moment you type the last character of the last word (no need to press space)
  • ⏱️ Timer progress bar — turns green → yellow → red as time runs out
  • 🖥️ Auto window sizing — on Windows the console window opens at 720 × 450 px

📦 Requirements

  • Python 3.9+
  • Textual (v8+ recommended)

🛠️ Installation

Option 1 — One-liner (Windows / PowerShell / CMD)

See Quick Start above.

Option 2 — Clone & run

git clone https://github.com/afnan-nex/monkeytype-tui.git
cd monkeytype-tui
python -m pip install --upgrade textual
python monkeytype_tui.py

🎮 Usage

python monkeytype_tui.py

Press any key to start the test and begin typing. Type the highlighted word and press Space to move to the next one.

Keyboard shortcuts

Screen Key Action
Main Esc Restart test
Main Tab New test
Main Ctrl+C Quit
Results R Restart test
Results T New test
Results Q Quit

Switching modes

Use the buttons at the top of the screen:

  • time — type as much as you can before the timer runs out
  • words — type a fixed number of words as fast and accurately as you can

📝 Custom word list

Want your own words? Drop a words.txt file next to the script — one word per line. The app loads it automatically (and falls back to the built-in list if the file isn't found).

📄 License

This project is open source. Feel free to fork, modify, and use it however you like.

About

Minimal, aesthetic MonkeyType-inspired terminal typing speed test (TUI) built with Python Textual and styled in Catppuccin Mocha.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages