shredbx logo
shredbx shredbx shredbx shredbx Personal
  • Home
  • Lab
  • Portfolio
  • Experience
  • Services
  • Profile
  • Contact
AClaude
  • Home
  • Lab
  • Portfolio
  • Experience
  • Services
  • Profile
  • Contact
Andrei Solovev
ARCADE
Search games... ⌘K
  • Arcade
    • 2048
    • Minesweeper
    • Pac-Man
    • Snake
    • Tetris
Games/ Minesweeper
Arcade · Prototype

Minesweeper

Reveal safe cells. Avoid the mines

Prototype
9 × 9 Grid
intermediate Difficulty
PixiJS Engine
Minesweeper

MINESWEEPER

// HAZARD DETECTION SYSTEM v1.0

> GRID: 9 × 9 / MINES: 10

> ← → ↑ ↓ MOVE CURSOR

> [SPACE]: REVEAL / [F]: FLAG

> CHORD: SPACE ON NUMBER = AUTO-REVEAL

> FIRST REVEAL IS ALWAYS SAFE

PRESS [ENTER] TO INITIATE

Esc to exit · Enter to start

How to Play

Reveal safe cells. Numbers show how many mines touch that cell. Flag suspected mines. Chord-click a revealed number to auto-reveal neighbors. First click is always safe.

Controls

// KEYBOARD
←↑↓→
Move cursor
Space
Reveal cell
F
Toggle flag
Space on number
Chord (auto-reveal neighbors)
Enter
Start / Restart
Esc
Pause / Exit fullscreen
// MOUSE
Left click
Reveal cell
Right click
Toggle flag
Specs
Difficulty
intermediate
Grid
9 × 9
Engine
PixiJS
Topics
gamepuzzleminesweepergridpixijs
Languages
  • TypeScript 72%
  • Svelte 18%
  • CSS 10%

About

Why I built this

Minesweeper is the game that taught me about flood-fill algorithms when I was 12. Rebuilding it was nostalgic — and surprisingly tricky to get right. The first click must always be safe (you regenerate the board if it hits a mine), chord-clicking on numbers should auto-reveal neighbors, and the cursor-based keyboard navigation had to feel as natural as mouse clicks. It's the only game where the arcade preset's lives system maps to a single life.

Highlights

Safe First Click Board regenerates if your first click would hit a mine
Flag & Chord Right-click to flag, click number to auto-reveal safe neighbors
Flood Fill Empty cells cascade-reveal until they hit numbered borders
Keyboard Navigation Arrow keys move cursor, Space reveals, F flags
9×9 / 10 Mines Classic beginner difficulty — compact and fast

Tech Stack

Canvas 2D
PixiJS
game-preset-arcade
Flood-fill BFS

Dev Notes

>

Win detection abuses the arcade preset: lives > 0 at game-over means win (all safe cells revealed), lives === 0 means you hit a mine.

>

The board is generated lazily — mines are placed after the first click, guaranteeing safety. If the random placement would put a mine there, it regenerates.

>

Chord-clicking checks if the number of adjacent flags matches the cell's mine count. If so, all unflagged neighbors are revealed — a huge time-saver.

shredbx logo shredbx shredbx shredbx shredbx Andrei Solovev

Solution Architect & Lead Software Engineer

ExperiencePortfolioResearch & ExperimentsEducationCertificationSkills
GitHub ↗LinkedIn ↗Email ↗
AVAILABLE FOR NEW PROJECTS
// MY LATEST BEATS
Hobby & Interests

Lab

  • The Lab
  • Framework
  • Components
  • Packages
  • Games
  • Process (SDLC)
  • Knowledge
  • Blog

Andrei

  • Portfolio
  • Experience
  • Services
  • Profile
  • Contact
  • Lifestyle

Team

  • Team
  • Andrei
  • Claude

Legal

  • Privacy
  • Terms
  • Cookies
© 2026 shredbx.com. All rights reserved. — Andrei Solovev |