MvvmMicro
April 20, 2025 · View on GitHub
A lightweight MVVM framework for .NET inspired by MVVM Light Toolkit.
Goals
- No third party dependencies, such as
CommonServiceLocatororSystem.Windows.Interactivity. - No feature kreep – only core MVVM types and services are included, such as
RelayCommand,AsyncRelayCommand,ObservableObject, and a simpleIMessenger.
Supported platforms
- .NET Framework 4.7.2 & .NET 8.0 (WPF)
- .NET Standard 2.0 (Xamarin.Forms, Avalonia, MAUI, etc.)
- Universal Windows Platform (UWP)
Installation
The primary way to use MvvmMicro is by adding the nuget package to your project:
Install-Package MvvmMicro
Overview
| Type | Description |
|---|---|
ObservableObject | The base class for objects that support property change notification. |
ViewModelBase | The base class for view models with the Messenger and IsInDesignMode properties. |
Messenger | A service for sending and receiving messages, typically between view models and views. |
RelayCommand,RelayCommand<T> | An ICommand implementation based on a synchronous delegate for Execute and CanExecute. |
AsyncRelayCommand,AsyncRelayCommand<T> | An ICommand implementation based on an asynchronous delegate for Execute with cancellation support. |
Also check out the class diagram and the sample project.
License
Code licensed under the MIT License.