Skip to content

mrgnhnt96/minesweeper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Minesweeper

A classic Minesweeper game for the terminal, built with Dart and nocterm.

███╗   ███╗██╗███╗   ██╗███████╗███████╗
████╗ ████║██║████╗  ██║██╔════╝██╔════╝
██╔████╔██║██║██╔██╗ ██║█████╗  ███████╗
██║╚██╔╝██║██║██║╚██╗██║██╔══╝  ╚════██║
██║ ╚═╝ ██║██║██║ ╚████║███████╗███████║
╚═╝     ╚═╝╚═╝╚═╝  ╚═══╝╚══════╝╚══════╝

Minesweeper

Minesweeper

Minesweeper

Minesweeper

## Features
  • Terminal-based UI with keyboard controls

  • Three difficulty levels:

    Difficulty Grid Size Mine Density
    Easy 9×9 12%
    Medium 16×16 24%
    Hard 24×24 36%
  • Animated game over sequence

  • Flag system to mark suspected mines

Requirements

  • Dart SDK >=3.9.0 <4.0.0

Installation

dart pub get

Usage

dart run

Controls

Key Action
Arrow Keys Move cursor
Space Reveal cell
F Flag/unflag cell
Enter Confirm selection

How to Play

  1. Select a difficulty level on the intro screen
  2. Navigate the grid using arrow keys
  3. Press Space to reveal a cell
  4. Press F to flag cells you suspect contain mines
  5. Reveal all non-mine cells to win
  6. Hit a mine and it's game over!

Project Structure

lib/
├── main.dart           # Entry point
└── src/
    ├── app.dart        # Root application component
    ├── models/         # Data models (Difficulty, Place, etc.)
    ├── provider/       # State management
    └── screens/
        ├── intro/      # Difficulty selection screen
        ├── mine_sweeper/  # Main game screen
        └── game_over/  # Game over screen

Dependencies

About

Classic Minesweeper recreated for the command line

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages