A modern Go implementation of the classic typing game Letter Invaders.
This is a rewrite of the classic C version using Go and the Bubble Tea TUI framework. The original game had ~2000+ lines of C code with manual terminal handling - this version is ~300 lines of clean, modern Go.
- Type falling words before they reach the bottom
- Progressive difficulty with level increases
- Score tracking and WPM calculation
- Clean terminal UI with highlighted words
- Pause/resume functionality
- ASCII explosion effect when words are completed
- Configurable speed control for younger players (
-speed)
go build# Run with default dictionary (uses /usr/share/dict/words)
./letter-invaders-go
# Use the short words dictionary (great for kids!)
./letter-invaders-go -d short_words.txt
# Use a custom dictionary
./letter-invaders-go -d /path/to/dictionary.txt
# Slow the game down (milliseconds per tick; higher = slower)
./letter-invaders-go -speed 2000- Type letters - Match and destroy falling words
- Backspace - Clear current input
- SPACE - Pause/resume game
- Ctrl+L - Redraw screen
- Ctrl+C - Quit (use q on the Game Over screen)
The dictionary file should contain one word per line. The included short_words.txt contains 1-3 letter words, perfect for beginners and young children.
Based on the original Letter Invaders by Larry Moss (1991)
- Original C version: https://github.com/davidcsterratt/letter-invaders
- Go rewrite using Bubble Tea framework