mirror of
https://github.com/ghndrx/shellmate.git
synced 2026-02-10 06:45:02 +00:00
1b0b093895a643a1fb049e34ffa2562602ab220f
- Add TerminalSession class with proper resize handler - Fix crash when terminal is resized - Add ASCII art title for wide terminals - Better centered panels with Rich - Green chess board theme with proper piece colors - Stockfish AI integration (falls back to random moves) - Move history display - Responsive layout that adapts to terminal size - Hide/show cursor appropriately
♟️ ShellMate
SSH into chess mastery.
ssh play@shellmate.sh
Experience chess in your terminal. Play against AI, challenge friends, or master the game with interactive tutorials.
✨ Features
🎮 Game Modes
- vs AI — Challenge Stockfish at adjustable difficulty (beginner → grandmaster)
- vs Player — Real-time PvP matchmaking with ELO ratings
- vs Friend — Private rooms with shareable codes
📚 Learn Mode
- Interactive Tutorials — From absolute basics to advanced tactics
- Move Analysis — AI explains why each move matters
- Puzzle Rush — Tactical training exercises
- Opening Explorer — Learn popular openings with explanations
- Endgame Drills — Master critical endgame patterns
🏆 Compete
- Global ELO leaderboard
- Game history & replay
- Achievements & stats
🚀 Quick Start
# Play a game
ssh play@shellmate.sh
# Learn chess
ssh learn@shellmate.sh
# Spectate live games
ssh watch@shellmate.sh
🖥️ Controls
| Key | Action |
|---|---|
| Arrow keys | Navigate board |
| Enter | Select/Move piece |
h |
Get hint |
u |
Undo move |
n |
New game |
r |
Resign |
q |
Quit |
🏗️ Tech Stack
- Python 3.11+ with type hints
- Textual — Modern TUI framework
- python-chess — Chess logic & notation
- Stockfish — AI engine
- asyncssh — SSH server
- Redis — Matchmaking & sessions
- PostgreSQL — User data & game history
🐳 Self-Hosting
git clone https://github.com/ghndrx/shellmate.git
cd shellmate
docker compose up -d
Then connect:
ssh -p 2222 play@localhost
See docs/self-hosting.md for configuration options.
📝 License
MIT
Website: shellmate.sh
Game: ssh play@shellmate.sh
Built with ♟️ by Greg Hendrickson
Languages
Python
99.3%
Dockerfile
0.7%