Local browser sandbox for "duplicate chess" — a four-player coupled-board chess variant invented by Andrew Freiberg. Scaffold per CREATE_PROJECT.md plus the approved design spec from this session's brainstorming. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2.3 KiB
IDEA.md — Duplicate Chess
What is this?
A local, browser-based sandbox/visualizer for "duplicate chess" — a four-player
chess variant invented by Andrew Freiberg (Seth's father). This project is to
duplicate chess what the sibling blind_chess project is to blind chess: a
digitization that lets an otherwise hard-to-play variant actually be played and
studied.
Duplicate chess: four players — North, South, East, West — and four chessboards set up between adjacent compass points (NW, NE, SW, SE). North and South play White; East and West play Black. Each player controls one colour on two boards (North = White on NW and NE; West = Black on NW and SW; and so on). Turn order is N → S → E → W.
The defining rule: on your turn you make the identical algebraic move on both of your boards. A move is legal only if it is legal on both. When one of your pieces is captured on one board, its twin on your other board freezes into a "ghost" — it can never move again (no synchronized move exists for it), but it still occupies its square, blocks lines, can give discovered check, and can itself be captured. Every individual board always remains a legal game of orthodox chess.
Problem it solves
In the inventor's own words, the variant can't be grasped from prose: "this is not really a variant that can be understood verbally after a certain point ... diagrams are probably essential." The physical game is fiddly to set up and play. This tool puts all four boards on one screen, enforces the synchronized-move coupling, renders ghosts, and shows why a move is or isn't legal — so the variant can be seen.
Constraints / preferences
- Local, single-operator tool. No server, no networking, no accounts — duplicate chess is perfect-information, so one screen shows the whole game truthfully.
- Stack: Vite + Svelte 5 + TypeScript,
chess.jsper board. Single package. - Sibling project to
blind_chess; same homelab conventions. - v1 is a visualizer/sandbox. Networked four-player play and AI opponents are explicitly out of scope for now.
See docs/superpowers/specs/2026-05-19-duplicate-chess-design.md for the full design,
and USERFILES/4-person-chess.txt in the blind_chess repo for the original
inventor conversation this is based on.