This was one of my first larger personal programming projects that I used to improve my Python knowledge. While I've made some updates since its initial completion, I've actually tried to keep the main logic and layout the same. The goal of this project was not to have the perfect minesweeper implementation, but rather to have fun and learn a lot (both of which definitely happened). My only rule when starting this project was to not look at any reference code - I thought it would be cheating myself of the opportunity to learn from my mistakes.
Simply run the minesweeper file:
python minesweeper.py
The first window that pops up asks the user to choose a level and whether they'd like to play a game or view the leaderboard
Here's a screenshot from a completed game at the medium level
If the completed time is one of the 10 fastest (or if the level hasn't been completed 10 times) then the user will be asked to add their username


