A classic memory-matching game built with WPF and following the MVVM pattern.
MemoryGame is a desktop application built in C# using Windows Presentation Foundation (WPF).
It presents a grid of hidden cards, and the player's goal is to find and match pairs of identical images.
The game supports:
- Player login
- Avatar selection
- Adjustable board size
- Adjustable timer
- Save/load functionality
- Statistics
- Player accounts: Login and select avatars.
- Adjustable board: Choose grid size (e.g., 4x4, 6x6).
- Adjustable timer: Countdown timer that can be set by the player to limit game duration.
- Save/Load: Continue your game later.
- MVVM pattern: Clean separation of UI and logic.
- User-friendly interface: Simple and intuitive design with WPF.
Follow these instructions to run the project locally.
- Windows OS
- Visual Studio with WPF support
- .NET framework compatible with WPF (e.g., .NET 6 or .NET Framework 4.x)
- Clone the repository:
git clone https://github.com/al3ssVil/MemoryGame.git-
Open the solution in Visual Studio.
-
Build the project.
-
Launch the application.
-
Create or select a player profile and choose an avatar.
- Pick a board size and timer:
- Use the default board (4x4) with the default timer (60 seconds). You click Standard and after New game
- Or customize the board size and timer to your preference, after that, you presse Apply Custom Size and New Game.
- Click cards to reveal them and find matching pairs.
-
Save your progress and load previous games as needed.
-
When the game ends:
WPF (Windows Presentation Foundation) – UI framework.
MVVM (Model-View-ViewModel) – Design pattern for separation of concerns.
C# – Primary programming language.
Project Structure:
Models → Game data and player profiles
ViewModels → Logic and data binding
Views → XAML files for UI
Persistence: Game progress saved via local file storage or serialization.
