StackWorks — Classic Chess Help & Rules
Classic Chess uses standard chess movement and check rules:
check, checkmate, stalemate, castling,
en passant, and promotion.
Table of Contents
Rules Overview
Movement (Chess)
-
Pieces move like chess: King, Queen, Rook, Bishop, Knight, Pawn.
-
Check rules apply: you may not make a move that leaves your
king in check.
-
Castling and en passant exist when allowed by the current state.
- Promotion happens on reaching the final rank.
Repetition & Draws (Chess-style)
-
Threefold repetition (claimable draw): if the same position
occurs at least 3 times, the player to move may claim a draw.
-
Fivefold repetition (automatic draw): if the same position
occurs at least 5 times, the game is drawn automatically.
Movement & Check
Select a piece to see legal destinations. Legal moves are highlighted.
Check reminder: A move is illegal if it leaves your king in
check.
Special Moves
Castling
-
Castling is a king move of two squares on the home rank; the rook
moves to the square next to the king.
- You cannot castle out of, through, or into check.
En Passant
-
When a pawn advances two squares, it may be captured en passant on
the immediately following move.
Promotion
- When a pawn reaches the final rank, it is promoted.
Repetition & Draws
Repetition is based on repeating the same position, not repeating
the same moves.
The same position means: same player to move, same piece placement, and
the same relevant rights (castling rights and en passant state).
Using the Interface
- Undo/Redo are available in Option Actions.
- Flip board rotates the board 180°.
- Coordinates toggles file/rank labels.
-
Layout (Options → Layout) switches between
Panels (sidebars) and Menu (tap ☰ to open panel
sections as dialogs).
-
Inside squares draws coordinates on the board itself: lowercase
file letters in the bottom row (lower-right of each square) and rank
numbers in the left column (upper-left of each square). The label
color uses the opposite square’s base color for contrast.
-
Board theme changes the checkerboard background
(Classic/Green/Blue/Stone/Burled Wood).
- Theme changes the piece style (2D/3D/Neo).
- Save/Load lets you export or restore a game state.
Keyboard shortcuts
Shortcuts use Ctrl (Windows/Linux) or Cmd
(macOS). Shortcuts are disabled while typing in a text field.
- Undo:
Ctrl/Cmd+Z
-
Redo:
Ctrl/Cmd+Y or Ctrl/Cmd+Shift+Z
- Save:
Ctrl/Cmd+S
- Toggle analysis:
Ctrl/Cmd+Shift+A
- Resign:
Ctrl/Cmd+Shift+X
-
Full Screen:
Ctrl/Cmd+Shift+F (or the Full Screen
button)
-
Bot speed:
Alt+↑/Alt+↓ (when the bot
speed control is available)
-
Playback speed:
Alt+Shift+↑/Alt+Shift+↓
-
Show keyboard shortcuts:
Ctrl/Cmd+Shift+? (also
works as Ctrl/Cmd+Shift+/)
-
Right-click menu: Right-click outside the board →
Show Keyboard Shortcuts
Analysis mode (private sandbox)
-
Toggle via the Analysis button or
Ctrl/Cmd+Shift+A.
-
In online rooms, moves made in Analysis mode are local-only and
are not submitted to the server.
-
Your opponent does not see your Analysis mode or analysis moves.
-
AI/bots are paused while analysis is enabled, and restored when you
exit.
- Leaving Analysis returns you to the live game state.
Board visualization (arrows & highlights)
-
Draw arrows (desktop): Right-click and drag from one square to
another.
-
Knight arrows: If the drag is a knight move (2×1), the arrow
draws as a 90° “L” shape.
- Highlight squares (desktop): Right-click a square.
-
Colors (desktop): Orange (default), Shift = Green, Ctrl = Red,
Alt = Blue.
- Clear (desktop): Left-click anywhere on the board.
Touch / tablet (Analysis mode): On touch devices, a small swatch
palette appears below the board while Analysis is enabled.
-
Pick color: Tap a color swatch (Orange/Green/Red/Blue) to set
the annotation color.
- Draw arrows: Touch and drag from one square to another.
- Highlight squares: Double-tap a square.
-
Clear all: Tap the Clear swatch (black square with a red
X).
-
Erase mode: Tap the Erase swatch to toggle erase mode.
While enabled, double-tap removes an existing square highlight and a
touch-drag removes an existing arrow.
PGN Import & Export
You can import/export games using PGN (Portable Game Notation).
This is useful for sharing games with other chess tools or importing a
game from elsewhere.
Import (Paste or Upload)
-
Open Option Actions and choose Import PGN (paste) or
upload a
.pgn/.txt file.
-
Import rebuilds the game from the standard starting position and
populates the Move History.
Note: PGN import is offline-only for now. In online
rooms, the server is authoritative and imported moves are blocked.
Export (Current Line)
-
Export PGN exports the game up to the
currently selected
position in Move History.
-
If you’ve jumped back in history, exporting will export that line
(not necessarily the full game).
FEN Copy/Share
FEN (Forsyth–Edwards Notation) is a compact string that describes a
single chess position.
Copy FEN from any move: Right-click any Move History entry and
choose Copy FEN. This copies the FEN for that exact position to
your clipboard.
You can paste the FEN into chess analysis tools, share it with a friend,
or use it to report/debug a position.
Bot (Optional)
Classic Chess supports optional bot opponents. Open
Game Panel → Bot and set White and/or Black to a
tier (Beginner / Intermediate / Strong).
-
Speed uses a slider (milliseconds). The current value is shown
as an ms readout.
- Use the ↺ button to reset speed to the default.
Warmup note: The first time Stockfish loads, it may take a while
(WASM compile/download). The UI will show a warmup message while it
initializes.
Pause/resume: When the bot is paused on its turn, an on-screen
toast appears (for example:
“White’s turn. Tap here to resume bot”). Tap the toast itself to
resume.
Local engine option: If in-browser Stockfish doesn’t work well on
your device, you can run the local Stockfish HTTP server and configure
the web app with VITE_STOCKFISH_SERVER_URL.
Notation
The move list uses a simple square-to-square notation, using
→ for moves and × for captures.
Back to Game