- Tiny Arcade
- Minesweeper
Minesweeper
Thirty mines on a 16×12 board. Every number tells you exactly how many neighbours are mined — the rest is deduction, and the first click is always safe.
Click to open · right-click to flag · F flags the cursor cell · arrows move the cursor Tap to open · press and hold to flag · on-screen buttons move the cursor
The rules
The board hides thirty mines among a hundred and ninety-two cells. Opening a safe cell reveals a number: how many of its eight neighbours contain a mine. A blank cell has no mined neighbours, so it opens the entire connected region of blanks around it in one move.
You win by opening every cell that is not a mine — not by placing thirty flags. Flagging is bookkeeping for your own reasoning, and the game counts down the remaining mines to help you keep track. A single opened mine ends the run.
Controls
| Click / tap | Open a cell; tap an opened number to chord |
|---|---|
| Right-click | Place or remove a flag |
| Long press | Flag on touch screens (about 0.4 s) |
| Arrows / WASD | Move the keyboard cursor |
| Space / Enter | Open the cell under the cursor |
| F | Flag the cell under the cursor |
Strategy that actually helps
Start in a corner or on an edge. A corner cell has three neighbours rather than eight, so a blank there opens a larger region and gives you more information per click.
Use the 1-2-1 and 1-2-2 patterns. When two numbers share neighbours, subtract what they have in common. A 1 next to a 2 on a wall means the mine sits on the side the 2 covers and the 1 does not. These two patterns resolve a surprising share of real boards without any guessing.
Don't flag everything. A flag on a cell you have not actually deduced hides information and lets you chord into a mine. Flag only when the logic is certain, then use chording to clear the region in one action.
Accept that some boards need a guess. Minesweeper can reach positions where the visible numbers genuinely do not distinguish between two placements. The skill is in guessing late, guessing where the follow-up is best, and having already cleared everything certain.
Notes on the implementation
Mines are placed after your first click, with its 3×3 neighbourhood excluded. This is the difference between a game that feels fair and one that occasionally kills you on move one — a detail most quick implementations skip.
Opening a blank region uses an explicit stack rather than recursion: a large empty area can be several hundred cells, which overflows the call stack in some browsers. Chording is gated on the flag count matching the number exactly, so a stray tap cannot open cells you have not reasoned about.
The game is fully playable from the keyboard — arrows move a cursor, Space opens, F flags — and board events are announced to screen readers through a live region. Sound is synthesised with the Web Audio API, so no audio files are downloaded; the toggle is remembered between visits.