tCheckers featured image

tCheckers

Published on February 22, 2025

npm version npm downloads GitHub stars

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 with Enter.
  • 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.

Take tCheckers for a spin the next time you need a tactical timeout between commits.