Daily Chess
One position a day, the same for everyone.
Today
Dealing today’s puzzle…
Everyone gets this same position today. Find checkmate against Black’s defense; the clock starts on your first move.
Today’s scores
Nobody has posted a score today. Be the first.
Tap a piece to see where it can legally go, then tap a highlighted square to move it there. Every move is checked by chess.js, so nothing illegal ever gets through. Every legal move stays played, Black chooses its strongest reply, and play continues from the position you created. Fewer moves is better; time only breaks a tie.
Hint asks the engine for its best move from the current position and marks its piece and destination. Each hint adds one move and 30 seconds, and the leaderboard shows how many hints were used. Give up reveals one known checkmate line, spends today’s puzzle, and cannot be posted.
Reset puts the position back to the start of today’s puzzle without losing your move count or your time so far — it undoes the board, not the attempt. Closing the tab does not lose your place either: reopening it picks the position, your attempts, and the clock back up right where you left them.
Black’s replies and hints come from js-chess-engine. If a move allows checkmate, stalemate, or another draw, the board says so; Reset lets you take another route without forgiving moves or time.
Want as many positions as you like instead, with no clock and no leaderboard? Free play Chess shuffles through the same puzzle set without repeating one twice in a row.