
tCheckers
Published on February 22, 2025
CLIGamesInkOpen SourceReactTypescriptWeekend Hack
The terminal-native checkers match that keeps strategy breaks one command away.
๐ What is tCheckers?
tCheckers started as a weekend experiment to learn more about Ink and has grown into a polished, color-rich checkers experience that lives entirely in your terminal. It lets you spin up one-off games, swap between friendly head-to-head matches, and even practice against a CPU that makes quick, legal moves.

โจ Key Capabilities
๐น๏ธ Core Gameplay
- Full 8ร8 checkers board rendered with ASCII pieces and coordinate labels.
- Smooth keyboard-driven flow: pick a piece with algebraic input (e.g.,
E3) and confirm the destination withEnter. - Real-time move validation with clear guidance when a move is blocked or a capture is available.

๐ค Solo Practice
- Built-in AI opponent that evaluates valid moves each turn and makes fast, legal responses.
- Configurable delay to mimic thoughtful play so turns still feel human-paced.
๐ค Multiplayer & Flow
- Single-terminal multiplayer mode with a navigable main menu for quick session setup.
- In-game move history panel so both players stay aligned on captures and swings.
- Scoreboard and turn indicator keep momentum without breaking focus.
๐ Game Feel & Feedback
- Gradient title art and color-coded tokens to make the CLI feel lively.
- Success and error messaging that celebrates captures and flags bad input before a move lands.
- Escape hatch (
Esc) to cancel selections and reset without leaving the board.
๐ฏ Perfect For
- Developers who want a quick strategic reset between builds without leaving the shell.
- Terminal enthusiasts exploring what React + Ink can do beyond dashboards.
- Educators demonstrating turn-based state management in a compact TypeScript project.
โก Quick Start
- Play instantly
Bash
npx tcheckers- Run locally for hacking
Bash
git clone https://github.com/gfargo/tcheckers.git
cd tcheckers
yarn install
yarn build && yarn start๐ง Technology Stack
- React + Ink UI rendered directly in the terminal.
- TypeScript-first architecture with shared contexts for game and screen state.
- Meow-powered CLI entry point, bundled via TypeScript
tsc. - Automated checks with Prettier, XO, and AVA snapshot tests.
๐ Links
- GitHub: https://github.com/gfargo/tcheckers
- npm: https://www.npmjs.com/package/tcheckers
- Issue tracker: https://github.com/gfargo/tcheckers/issues
Take tCheckers for a spin the next time you need a tactical timeout between commits.
Like what you saw?
There's more where that came from.
