TermTypr
Practice your typing right in the terminal. Track your speed, see where you improve, and have fun doing it.
What it does
- Three game modes: random words, full phrases, or racing your own ghosts
- Live feedback: WPM and accuracy update as you type
- Stats & charts: see your history, personal bests, and trends over time
- Customizable: set the word count per game, switch themes, add your own words
- Runs anywhere: works on any terminal with Python 3.10+
Install and run
pip install termtypr
termtypr
That's it. The main menu lets you pick a game mode and start typing.
Games
- Random Words: type a batch of random words as fast and accurately as you can
- Phrase Typing: type full phrases and quotes to build flow
- Race a Ghost: race a keystroke-perfect replay of one of your best runs
Your best phrase runs are saved as ghosts automatically (change that in
Ghost Settings, Ctrl+P). Press R on a phrase result to rematch its ghost.
CLI commands
termtypr # Launch the app
termtypr stats # Quick stats from the command line
termtypr add-words word1 word2 # Add your own words to the pool
termtypr list-words # See all available words
Development
Setup Development Environment
git clone https://github.com/SteMazzO/termtypr.git
cd termtypr
uv run termtypr
Run Tests
uv run pytest -v
Contributing
Contributions are welcome - see CONTRIBUTING.md.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Acknowledgments
- Inspired by MiType, 10FastFingers, and TypeRacer
- Text samples from Typeracer Data
- Built with Textual by Textualize
Changelog
See CHANGELOG.md for version history and release notes.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file termtypr-1.0.0.tar.gz.
File metadata
- Download URL: termtypr-1.0.0.tar.gz
- Upload date:
- Size: 585.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6009615a4b75d9f5d0404c084756c594bdd5971a2f45f8ff1b1fb7c0d15968c7
|
|
| MD5 |
a0e0f11fdf40baead9833d72a84cd350
|
|
| BLAKE2b-256 |
6db5846a432a8efe6a092d9300e92a9bdfe30f44c367c3c8c19cfcefef214a02
|
Provenance
The following attestation bundles were made for termtypr-1.0.0.tar.gz:
Publisher:
publish.yml on SteMazzO/termtypr
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
termtypr-1.0.0.tar.gz -
Subject digest:
6009615a4b75d9f5d0404c084756c594bdd5971a2f45f8ff1b1fb7c0d15968c7 - Sigstore transparency entry: 2339998997
- Sigstore integration time:
-
Permalink:
SteMazzO/termtypr@45e5e6711e1ed8c2d8dcdeb975c1e4a150b16f83 -
Branch / Tag:
refs/tags/1.0.0 - Owner: https://github.com/SteMazzO
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@45e5e6711e1ed8c2d8dcdeb975c1e4a150b16f83 -
Trigger Event:
release
-
Statement type:
File details
Details for the file termtypr-1.0.0-py3-none-any.whl.
File metadata
- Download URL: termtypr-1.0.0-py3-none-any.whl
- Upload date:
- Size: 600.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
80b85cff49d977de4e4ad154e6769f0de0b09d7d680394f92f3cf9bc6a5e6c44
|
|
| MD5 |
0afc13c11fc9c161f527eb3c64baa204
|
|
| BLAKE2b-256 |
3a2ced144c64b6535ec583e500cff6dadc8463b581ea49bee258436a3cf4af22
|
Provenance
The following attestation bundles were made for termtypr-1.0.0-py3-none-any.whl:
Publisher:
publish.yml on SteMazzO/termtypr
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
termtypr-1.0.0-py3-none-any.whl -
Subject digest:
80b85cff49d977de4e4ad154e6769f0de0b09d7d680394f92f3cf9bc6a5e6c44 - Sigstore transparency entry: 2339999016
- Sigstore integration time:
-
Permalink:
SteMazzO/termtypr@45e5e6711e1ed8c2d8dcdeb975c1e4a150b16f83 -
Branch / Tag:
refs/tags/1.0.0 - Owner: https://github.com/SteMazzO
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@45e5e6711e1ed8c2d8dcdeb975c1e4a150b16f83 -
Trigger Event:
release
-
Statement type: