Chrome extension scaffold for a chess.com overlay.
- Get a minimal Manifest V3 extension running on chess.com.
- Inject a transparent overlay layer above the board.
- Keep the overlay aligned on resize / orientation changes.
- Add board-state detection and “good/bad square” visualization.
manifest.json- Chrome extension manifest (MV3)src/content.js- content script that mounts the overlaysrc/overlay.css- overlay stylesdocs/PLAN.md- phased plan and milestonesdocs/CHECKLIST.md- checklists for shipping stepsdocs/NOTES.md- design notes and assumptions
- Open
chrome://extensions/. - Enable Developer mode.
- Click Load unpacked.
- Select this folder:
ChessOverLay.
- Attack overlays now render as arrows (green = friendly, red = enemy).
- Arrow rendering lives in
src/arrow-renderer.js.
- Press
Ctrl+Shift+Oon chess.com to toggle debug mode. - Click the on-page toggle button (top-right) to toggle the overlay on/off.
- Debug mode adds a red outline and a small “ChessOverLay” badge.
- Debug state is persisted via localStorage key
chessOverlayDebug. - Overlay state is persisted via localStorage key
chessOverlayEnabled. - Debug probe in DevTools Console:
window.__chessOverlay.probeBoardStateSources()(results logged; also saved towindow.__chessOverlay.lastProbe). - Move list helper in DevTools Console:
window.__chessOverlay.getMoveList()(results logged; also saved towindow.__chessOverlay.lastMoves). - Board state helper in DevTools Console:
window.__chessOverlay.getBoardState()(results logged; also saved towindow.__chessOverlay.lastBoardState).