Getting Started
Do I need an account to play? +
No! You can play against the AI and use Pass & Play mode without any account. An account (via Google Sign-In) is only required to play online with friends, appear on the leaderboard, and save your game history.
How do I sign in? +
Click Sign In in the top navigation, then click Continue with Google. Your account is created automatically the first time you sign in. No password needed — ever.
Is my account permanent? +
Yes. Your Google account gives you a permanent CheckMate account. Your rating, game history, puzzle stats, and achievements are all saved and will be there whenever you come back. You can sign out anytime using the nav menu.
Is CheckMate free? +
Yes, CheckMate is completely free. All features — AI play, online multiplayer, puzzles, analysis, leaderboard — are available at no cost.
Online Play
How do I play with a friend online? +
Go to
Play Online, sign in with Google, then click
Create Game. A 6-character room code will appear. Share that code with your friend. They go to the same page, enter the code, and click
Join Game. The game starts automatically when both players are connected.
Why does online play require Google Sign-In? +
Online multiplayer requires sign-in so your opponent knows who they're playing against, results can be saved to your profile, and games appear on the leaderboard. Anonymous play is allowed for local and AI games.
What happens if my opponent disconnects? +
The connection status indicator in the game sidebar shows if your opponent is connected or disconnected. Their clock continues running. If they don't reconnect and run out of time, you win on time.
Can I offer a draw or resign? +
Yes. In the online game sidebar, you'll find an Offer Draw button and a Resign button. Your opponent will see the draw offer and can accept or decline.
How does the room code expire? +
Room codes are active as long as at least one player is in the room. Once both players leave, the room data remains in the database briefly but is no longer accessible. You can always create a fresh game.
Chess Rules & AI
Are all chess rules supported? +
Yes. CheckMate enforces all standard chess rules including: legal move generation, check and checkmate, stalemate, castling (kingside and queenside), en passant, pawn promotion with piece selection, and material tracking. Illegal moves are blocked automatically.
How strong is the AI? +
The AI uses a minimax algorithm with alpha-beta pruning and piece-square tables. Difficulty levels:
Beginner: Mostly random moves with slight capture preference.
Easy: 2-ply search — thinks 2 moves ahead.
Medium: 3-ply search — reasonably challenging.
Hard: 4-ply search — will punish tactical mistakes.
It won't beat a titled player, but Medium and Hard are a real challenge for casual players.
What does the hint system show? +
When you click a piece, green circles appear on squares where that piece can legally move. Hollow circles appear on squares where you can capture an enemy piece. You can disable hints in
Settings → Board.
Can I undo a move? +
Yes, when playing against the AI or in local mode. In AI mode, undo takes back two moves (your move and the AI's response). Undo is not available in online games against a real opponent.
Puzzles & Analysis
How do puzzles work? +
Select a puzzle category (Mate in 1, Fork, Pin, etc.) and click a piece to see its legal moves. Click a destination to make your move. If it matches the correct solution, you advance. Your streak and best streak are tracked and saved to your profile when signed in.
Can I import my games into the analysis board? +
Yes. Go to
Analysis, paste a PGN (Portable Game Notation) into the import field, and click Import. You can then step through the game move by move, or load any position via FEN.
Technical
Does CheckMate work offline? +
The AI and local Pass & Play mode work offline once the page is loaded (except for auth and Firebase-dependent features). Online multiplayer, leaderboard, and profile saving require an internet connection.
Why isn't there any sound? +
CheckMate uses two audio files:
assets/audio/move.mp3 and
assets/audio/mate.mp3. If you're running locally and don't have those files, sound won't play. Browsers also require a user interaction before playing audio — click anywhere on the page first. You can verify sound in
Settings → Sound.
What browsers are supported? +
CheckMate works on all modern browsers: Chrome, Firefox, Edge, Safari (desktop and mobile). Internet Explorer is not supported. For the best experience, use Chrome or Edge on desktop.
How do I run this locally? +
You can't just open the HTML files directly in a browser due to module loading. Use a local server: run npx serve . or python -m http.server 8000 in the project folder, then open http://localhost:8000.