Chess²
Online chess with real-time multiplayer, Stockfish AI, and Elo ratings.
AngularTypeScriptTailwind CSSFirebase
♟️ Play online with friends or against Stockfish AI bots
Challenge friends in real time, or sharpen tactics vs a fast, in-browser Stockfish—no install needed.

🔍 What is Chess²?
Chess² is a modern web chess app built with heart and an eye for details...
🧩 Key Features
📌 Why I Built This
I've always loved chess and wanted a fast, modern app that feels instant...
💡 Use Cases
- Play casual or rated games with friends in the browser.
- Practice vs Stockfish at adjustable strength levels.
- Share a game link and start instantly—no app store.
- Review openings and blunders with the quick recap.
- Use on mobile or desktop during breaks or commutes.
🧪 Tech Stack Overview
- Angular - Modern frontend framework with standalone components, SSR, and powerful reactive forms.
- TypeScript - Strongly typed JavaScript enabling safer refactors and reliable game logic.
- Tailwind CSS - Utility-first styling for responsive UI, dark mode, and consistent spacing.
- Firebase - Auth + RTDB/Firestore for secure accounts, presence, and real-time games.
⚙️ Getting Started
🧠 Challenges & Learnings
- Designing a deterministic game loop and validating moves on both client and server reduces desyncs.
- Separating UI state from canonical game state avoids animation jank during fast sequences.
- Firebase RTDB presence + heartbeats creates reliable online/offline indicators.
- Web Worker integration keeps the UI snappy while Stockfish thinks.
- Careful rate-limiting and security rules prevent malicious move injections.
📸 See it in Action
Want to chat about this project? Let’s chat.