#109
feat(minesweeper): classic Minesweeper with chords and best times
Summary
- Adds
src/minesweeper/: an original open-source Minesweeper matching documented classic Windows board sizes and rules (Beginner 9×9/10, Intermediate 16×16/40, Expert 16×30/99). - Implements reveal, flag, chord, flood fill, first-click safety, mine counter, timer, face/reset, win/lose, and localStorage best times — original visuals (no proprietary assets).
- Vitest coverage for board generation, reveal/flag/chord, win/lose, and first-click safety (
npm test: 25 passed). Amplify +customHttp.ymlregistered like other apps. - Root Games README table intentionally not updated (same as other pending app PRs such as document-scanner); comparison matrix lives in
src/minesweeper/README.md.
Test plan
-
cd src/minesweeper && npm ci && npm test && npm run build - Play Beginner: first click never dies; zeros flood; flags decrement counter; timer starts on first click
- Chord a numbered cell when adjacent flags match; mis-flagged chord loses
- Win a Beginner game and confirm best time persists after reload
- Switch Intermediate / Expert and reset via the face button /
R
Activity
3Confirming ground truth: this PR (#109, SHA 9cc898ab) is the preferred Minesweeper. Duplicate #110 stays closed. Earlier close-as-duplicate comment is superseded.
Closing as redundant with #110 (preferred Minesweeper PR, SHA 1219eb9d). Please review https://github.com/HeyPuter/everything/pull/110 instead.