A fully-featured Minesweeper game built with Java Swing, featuring a custom UI, multiple difficulty levels, and classic minesweeper gameplay. This project demonstrates object-oriented design principles, event-driven programming, and GUI development in Java.
This is a complete implementation of the classic Minesweeper puzzle game where players must uncover all safe cells on a grid while avoiding hidden mines. The game features an intuitive graphical interface with three difficulty levels and real-time mine counting.
-
Three Difficulty Levels:
- Easy: 8x8 grid with 20 mines
- Medium: 15x15 grid with 60 mines
- Hard: 20x20 grid with 120 mines
-
Intuitive GUI: Custom-designed interface with Java Swing components
-
Mine Counter: Digital-style display showing remaining mines
-
Game Status Display: Real-time feedback on game state (Win/Loss/In Progress)
-
Restart Functionality: Quick restart button to replay current difficulty
-
Custom Icons: Visual indicators for mines, flags, and game elements
-
Responsive Design: Clean, organized layout with custom fonts and colors
- Click on cells to reveal them
- Numbers indicate how many mines are adjacent to that cell
- Use logic to deduce where mines are located
- Avoid clicking on mines to win
- Uncover all non-mine cells to complete the game
- Java SE - Core programming language
- Java Swing - GUI framework
- AWT - Graphics and event handling
- Object-Oriented Programming - Design patterns and architecture
- Java Development Kit (JDK) 24 or higher
- Java IDE (Eclipse, IntelliJ IDEA, or NetBeans) - Optional
⭐ If you enjoyed this project, please consider giving it a star!
Made with ☕ and Java