Official game
Play termtype
This game is hosted by GitHub. Continue to the official page to play or download it.
Install from GitHubOverview
termtype is a free, open-source typing game that runs entirely in your terminal. Words fall down the screen like Space Invaders. Type them before they hit the water line. Words that drown cost a life, and you start with three. It's built in Python on the asciimatics library, installs from source in about two minutes, and works on Linux, macOS, and Windows.
Most typing games are flashcards with a timer. termtype is an actual arcade game with an economy of decisions: which word to type first, when to abandon a locked word, when to let a word sink on purpose to protect a combo. The scoring math rewards accuracy over raw speed, the difficulty curve is transparent once you understand the level bands, and there's a hard ceiling at level 15 where the game stops escalating and starts testing your consistency instead.
Three modes cover three moods. Vocab is the endless arcade mode where score chasing lives. Story mode types you through public-domain books with a Zen option for practice and a Challenge option where lives matter. Hacker News mode pulls the live front page and makes you type headlines, which is the closest thing to real-world typing practice in any game I've tested.
| Fact | Detail |
|---|---|
| Developer | Giovanni J. Costantini |
| Genre | Typing, arcade, terminal |
| Platforms | Linux, macOS, Windows (Python 3.11+) |
| Price | Free, MIT license |
| Modes | Vocab (endless), Story (books), Hacker News (live headlines) |
| Word packs | English, Italian, Programming, Sci-Fi |
| Progression | Profiles, badges, unlocks, sparkline stats, local leaderboard |
| Data | Local SQLite at ~/.termtype/termtype.db, zero telemetry |
| Version | 0.2.0, actively developed |
The whole game keeps data on your machine. Profiles, scores, and stats live in a local SQLite database, and the only network call in the entire codebase is the Hacker News headline fetch. If you want a game you can recommend to a privacy-paranoid friend, this is one of the cleanest examples on any platform.
Getting Started
Installation from source
git clone https://github.com/GiovanniCst/termtype.git
cd termtype
python3.11 -m venv .venv
source .venv/bin/activate
pip install -e .
termtype
On Windows, use a Windows Python and a Windows venv. A venv created inside WSL won't run from PowerShell, and the execution policy will block the activate script unless you bypass it for the session:
py -3.11 -m venv .venv
.\.venv\Scripts\python.exe -m pip install -e .
.\.venv\Scripts\termtype.exe
Two Windows-specific notes from the changelog. The classic console is capped at 8 colors, so the Hacker News panel loses its cream-orange look; use Windows Terminal for the full palette. And under WSL, audio routes through a remoting bridge that crackles under load; running native Windows avoids it entirely. If glyphs render as boxes, force the fallback renderer with termtype --ascii.
Your first session
- Create a profile before anything else. Stats, sparklines, badges, and leaderboards only track inside a profile. It takes five seconds.
- Start Vocab mode. The first three levels introduce mechanics gently: short words, slow falls, one or two on screen.
- Learn the lock rule early. Typing the first letter of a word locks it, and every keystroke goes to that word until you finish it or double-tap Backspace to abandon it.
- Play until you lose three lives, then read the stats page. The sparkline charts start meaning something after two or three sessions.
- Try the Konami code on the title screen: up, up, down, down, left, right, left, right, B, A. It works in-game too.
Beginner mistakes that cost runs
- Typing at full speed from the spawn. Words fall slowly in early levels. Speed bonus math actually punishes rushing a word you can't type cleanly, because each uncorrected typo costs 15% of that word's value.
- Ignoring Backspace. Correcting a typo with a single Backspace is completely combo-safe. Panic-typing forward is what resets streaks.
- Marathon sessions instead of daily sessions. One of the badges requires playing 7 consecutive days, and the skill curve rewards spaced practice.
- Judging the game on the first five levels. The intro band exists to teach the lock mechanic. Difficulty starts climbing at level 4 and gets real at level 10.
Core Mechanics Explained
The scoring formula is where casual players leave and score chasers begin. Every word's value is five factors multiplied together, and the source code pins the exact numbers:
word_score = base_value × speed_bonus × accuracy × level_mult × combo_factor
(+ 10 flat if cleared in the red zone)
(× 2 during bonus waves)
Base value: not all letters are equal
Letters score 10 points each. Digits score 12. Accented vowels score 13. Punctuation scores 14. A word's base value is the sum across its characters. This means "e-mail!!" is worth more than "email" despite being the same word, and headlines with numbers quietly outscore prose. In Hacker News mode, punctuation-dense headlines are the scoring food chain.
Speed bonus: the 2x ceiling
Expected typing time is half a second per character after the first. Finish a word in half the expected time and your speed bonus hits the 2.0 cap. Take twice as long and the bonus floors at 0.5. One-character words are excluded. The practical takeaway: a short word typed instantly can outscore a long word typed carefully, and bonus waves reward players who sprint only when the word is short enough to sprint.
Accuracy: the most expensive multiplier
Each uncorrected error multiplies that word's value by 0.85. Two typos cost 28% of the word. There's no cap on the damage and no upside to speed without accuracy, which makes this the single most important stat in the game. The combo system's typo window is 10 keystrokes wide: the first uncorrected typo drops your combo one tier, the second halves it, and the third resets it to zero. Backspace corrections avoid the penalty entirely, so the correct reflex under pressure is to fix, not to push forward.
The combo system: half of what you think
The combo counter advances one step for every 5 clean characters, and the score multiplier is 1 + 0.05 per step, capped at 10 steps. That's a maximum multiplier of x1.5. The screen-shaking callouts at 20, 30, and 40 steps, the ON FIRE and UNSTOPPABLE and GODLIKE banners, are pure feedback; the multiplier itself stopped growing ten steps ago. Chasing a 50-combo for score is a mistake. Chasing it for the combo_50 badge, which unlocks the no-backspace modifier, is a legitimate goal, and knowing the difference separates players who score from players who collect.
At combo 25 you earn a shield that absorbs one combo reset, downgrading it to a single-tier decay. This makes combo 25 the first real milestone to protect: play conservatively through the words just before it, then let the shield carry you through the risky ones.
Red zone and drowning
The three rows above the water line are the red zone. Clearing a word there adds a flat +10, which is small, but the clutch-save behavior matters more than the points: a word you rescue at the last second preserves your combo, while any drowned word resets it to zero. During bonus waves, drowned words don't touch the combo at all, which makes waves 5, 10, and 15 the safest places to attempt risky long words.
Levels, plateau, and surges
Every 10 destroyed words advance a level. The level multiplier climbs 10% per level and saturates at 2.4x at level 15, which is also where the difficulty plateaus. The band table governs what each level throws at you:
| Levels | Fall speed (rows/s) | Max words on screen | Word complexity |
|---|---|---|---|
| 1–3 | 0.8–1.5 | 3 | Short |
| 4–6 | 1.5 (held) | 4 | Medium |
| 7–9 | 1.5–2.2 | 4 | Complex chars introduced at 7 |
| 10–14 | 2.2–3.0 | 5 | Complex |
| 15+ | 3.0 (capped) | 5 | Complex |
Past the plateau, the game fires a surge every 20 words: each surge is 5% faster with 2.5% denser spawns than the last. This is the actual endgame. The score multiplier stopped at level 15, so the leaderboard past the plateau is decided by accuracy under surge pressure, not by anything else.
Progression Strategy
Badges worth planning around
Badges are derived from run stats, and seven of them gate unlocks:
| Badge | Requirement | Unlocks |
|---|---|---|
| combo_25 | Max combo 25 or higher | Programming word pack |
| combo_50 | Max combo 50 or higher | No-backspace modifier |
| level_10 | Reach level 10 | Fog modifier |
| First Plateau | Reach level 15 cap | Bragging rights |
| word_100wpm | Type one word at 100+ WPM | One of the speed proofs |
| wave_clean / wave_perfect | Bonus wave with zero drowned / zero rejects | Bonus-wave discipline |
| streak_7 | Play 7 consecutive days | Retro title |
| story_done | Complete a story text | Story-mode proof |
The unlock order that costs the least grinding: play daily for the streak, grind Vocab until 1,000 lifetime words for the Nebula theme (which happens naturally within a week of sessions), and hunt combo_25 for the Programming pack, which is the best pack in the game for real-world practice.
The first week: a concrete plan
- Day 1: Profile, Vocab until level 5 comes naturally, Story mode Alice chapter 1 in Zen. Goal: understand the lock rule and Backspace.
- Day 2: Vocab aiming for combo 15. Goal: learn that accuracy beats speed in the scoring math.
- Day 3: Vocab aiming for combo 25 and the shield. If the Programming pack is still locked, the English pack's medium words work fine.
- Days 4–5: Bonus-wave practice at waves 5 and 10. Goal: a clean bonus wave (zero drowned).
- Days 6–7: Challenge-mode Alice chapters 1–2. The streak badge lands on day 7.
Resource priorities
There's no currency, so the real resources are attention and session structure. Priority order for improvement: accuracy first (0.85 per error is brutal math), red-zone composure second (combo preservation), raw speed last. Speed grows on its own as a side effect of accuracy work. Chasing speed directly caps most players at the same 60 WPM plateau for months.
Mode Strategies and Builds
Vocab mode: the score-attack build
The scoring math produces one dominant strategy: protect accuracy through the early levels, bank the level multiplier, then farm the plateau. Concretely:
Levels 1–5: Type for zero typos. Combo target: 10–15. Let no word drown.
Levels 6–9: Hold combo, start eating red-zone clears for the flat bonus.
Wave 10: Bonus wave, x2 multiplier. This is where risky long words pay.
Levels 11–14: Full defense. The +10% per level makes every word here worth
more than two words at level 5.
Level 15+: Plateau. Score rate = accuracy × consistency × surge count.
The 60-second rolling score window tracks your peak rate, and bonus-wave points are excluded from it. Your real score rate is what you sustain outside the waves, which is another way of saying the leaderboard rewards the boring skill: clean typing at 3.0 rows per second.
Story mode: the fluency build
Story scoring is a different economy. Stopwords ("the", "of", "and") score at 25% weight, speed bonus is clamped to a narrow 0.8–1.2 band, and there's no red-zone bonus. What Story adds is the pace chain: clear each sentence on pace and the chain pays 25 per sentence, escalating to 250 at a chain of 10. A chevron marks the reading-order word, and clearing words in reading order pays a small flow bonus (2 per consecutive clear, capped at 10 total).
The design intent is legible in the numbers: the flow bonus is deliberately tiny so that chasing reading order never tempts you to let an urgent word drown, since a drowned word breaks a pace chain worth far more. The correct Story strategy is sentence-shaped, not word-shaped: read the full sentence, type the words in whatever order the fall demands, and protect the pace chain above everything.
Chapter fluency score is WPM × accuracy × (1 + 0.1 per pace-chain link). Re-reading a book for a better fluency number is the mode's long-tail game, and Alice in Wonderland is the fastest re-read since its vocabulary is the lightest of the five books.
Hacker News mode: the real-world build
Headlines mix capitalization, digits, punctuation, and proper nouns, which makes HN the best daily driver for practical typing. The scoring follows the standard formula, so punctuation-heavy headlines ("Show HN: I built a POSIX shell in 512 bytes of Rust (2024)") are worth dramatically more than short verb-first ones. Offline, a built-in list of all-time top posts substitutes, and those tend to run longer and more technical.
Word pack rotation
| Pack | Character of the words | Use it for |
|---|---|---|
| English | ~5,000 common words | Default, Story mode |
| Italian | Everyday Italian + accented vowels (13 pts/char) | Higher base scores, bilingual practice |
| Programming | Long technical terms, language names | Accuracy drills, real-world vocabulary |
| Sci-Fi | Unusual letter combinations | Breaking muscle-memory ruts |
The Programming pack is the accuracy classroom: words like "asynchronous" and "polymorphism" force every finger into unfamiliar sequences. The Italian pack is the sneaky score play, since accented vowels outscore plain letters and the pack is full of them. Rotate packs every three sessions to keep letter-pattern memory generalized.
Step-by-Step Strategy Sequences
- The combo-25 shield run. Start Vocab, type only words under 6 letters for the first two levels (short words = fewer chances for typo windows). Reach combo 25 by level 3, bank the shield, then accept the 4-word screen of level 4. The shield converts the first mistake from a disaster into a minor decay.
- The bonus-wave bounty hunt. Play normally until wave 5 (the first bonus wave, 8 seconds, x2 everything). During the wave, drowned words don't reset your combo, so this is the moment to attack the longest word on screen. A 12-letter word cleared under x2 with a clean record is worth multiples of anything else in the run.
- The level-15 banking line. From level 10, stop chasing. Every word's value is multiplied by the level multiplier, so survival is the multiplier. Clear medium words only, abandon anything over 9 letters (double Backspace, zero penalty), and let the surges come to you.
- The Alice fluency reset. In Story Challenge, Alice in Wonderland with 3 lives: type chapters 1–3 at 90% effort, saving the lives for the Caucus Race's vocabulary spikes ("comfits", "thimble"). Quit with S at any chapter end and resume fresh; the save system makes 15-minute sessions the intended unit of play.
- The HN punctuation harvest. In Hacker News mode, scan the screen for the headline with the most digits and punctuation before typing anything. Lock it first. A number-and-brackets headline is worth a plain sentence plus change, and the reading time costs you nothing.
- The typo-window recovery. You mistype and the combo decays one tier. Do not rush the correction. The window is 10 keystrokes wide, so finishing the current word cleanly plus starting the next word with 4 clean characters slides the old typo out of the window without another penalty event.
Advanced Tips
- Backspace is free; forward is not. A single Backspace correction never touches the combo. An uncorrected typo that reaches the third strike in a 10-keystroke window resets it to zero. The entire skill ceiling of this game lives in that asymmetry.
- Abandon strategically. Double Backspace abandons a locked word with no penalty. A word you locked by accident, or a 14-letter monster falling too fast, is worth abandoning so you can clear two easier words instead. Players who never abandon are players who drown.
- Bonus waves are combo insurance. Since drowned words don't reset combo during waves, the risky word you wouldn't touch on level 14 is free to attempt during the level-15 wave.
- The plateau is the real game. Levels 1–14 teach. Level 15+ is where scores are actually set, because the multiplier is maxed and surges compound every 20 words. Most of your practice time should be at or near the plateau.
- Digits and accents are score leaks. Typing "42" correctly is worth more than a 4-letter word, and HN headlines are full of years and version numbers. Practice your number row; it's the least-trained row on every keyboard.
- Watch the shark fin. The fin patrolling the water line is cosmetic, but the rare shark-leap cameo (roughly once a minute) is a useful blink-reset. If you catch yourself staring unbroken at the word row for minutes, the cameo is your cue to breathe.
- Secret words fire on exact matches. Type "shark" or "kraken" as a whole word mid-game for a frenzy of fins, "gold" for a golden sparkle on your next clear. The Konami code works on both the title screen and in-game. None of it changes scoring; all of it is worth seeing once.
- Sparklines are your coach. The stats page charts WPM and accuracy over time. The pattern that predicts a breakthrough isn't a spike, it's accuracy climbing while WPM stays flat. That's the signature of the plateau breaking.
FAQ
How do I install termtype?
From source, since it isn't on PyPI: clone the repo, create a Python 3.11+ venv, pip install -e ., run termtype. Full Windows PowerShell instructions are in the README, including the venv-in-WSL trap.
The game looks broken on my terminal. What do I fix first?
Run termtype --ascii to force the no-Unicode renderer. On Windows, use Windows Terminal instead of the classic console (which is capped at 8 colors), and make sure a box-drawing font like Cascadia Mono is selected.
Audio crackles under WSL. Can I fix it?
The WSL sound bridge crackles under load. Setting a Pulse latency target helped in recent builds, but running natively on Windows or Linux is the reliable fix. You can also run termtype --no-audio; all combo feedback that matters is visual.
What actually happens when I miss a word?
A word that crosses the water line drowns: you lose one of three lives, your combo resets to zero, and a splash marks the spot. During bonus waves the combo survives the drown, but the life is still lost.
Does the combo multiplier really cap at x1.5?
Yes. The score formula's combo factor is 1 + 0.05 per combo step, maxing at 10 steps. The bigger callouts at 20, 30, and 40 steps are feedback, not multipliers. Build long combos for badges and shields, not for score.
What's the fastest way to unlock the Programming pack?
Earn the combo_25 badge in Vocab mode. With the shield at combo 25, a disciplined early game on short words gets there within a few sessions.
Is my data private?
Completely local. Profiles and scores live in a SQLite database at ~/.termtype/termtype.db. There's no telemetry, no accounts, no update checks. The single network call is the Hacker News headline fetch, which only happens in that mode, sends nothing personal, and falls back to a built-in list offline.
Does it work on a Raspberry Pi?
Yes. It's a terminal app with no GPU requirements, and it runs offline in every mode except Hacker News.
What books are in Story mode?
Public-domain texts including Alice's Adventures in Wonderland, Pride and Prejudice, and Pinocchio, with both English and Italian texts. Progress saves per book, so you can read in short sessions.
Is there any way to make the game harder?
The unlock table includes two difficulty modifiers: no-backspace (earned at combo 50) and fog (earned at level 10). Both are self-imposed challenges once unlocked.
Final Verdict
termtype is the rare free game that respects both your data and your time. The scoring math quietly rewards exactly the habits that make people faster typists in real life: accuracy first, composure in the red zone, punctuation and numbers taken seriously. The plateau design means there's always a next challenge, the badge and unlock tables give daily sessions a reason to exist, and the whole thing runs on any machine with a terminal, including hardware a decade old.
Install it for the typing practice. Stay for the shark.
Last reviewed by Game How To Editorial. We play each game, verify mechanics against official sources and source code, and update guides when the game changes.






