Plugin.Maui.MVVMExpress.Navigation
1.0.1
dotnet add package Plugin.Maui.MVVMExpress.Navigation --version 1.0.1
NuGet\Install-Package Plugin.Maui.MVVMExpress.Navigation -Version 1.0.1
<PackageReference Include="Plugin.Maui.MVVMExpress.Navigation" Version="1.0.1" />
<PackageVersion Include="Plugin.Maui.MVVMExpress.Navigation" Version="1.0.1" />
<PackageReference Include="Plugin.Maui.MVVMExpress.Navigation" />
paket add Plugin.Maui.MVVMExpress.Navigation --version 1.0.1
#r "nuget: Plugin.Maui.MVVMExpress.Navigation, 1.0.1"
#:package Plugin.Maui.MVVMExpress.Navigation@1.0.1
#addin nuget:?package=Plugin.Maui.MVVMExpress.Navigation&version=1.0.1
#tool nuget:?package=Plugin.Maui.MVVMExpress.Navigation&version=1.0.1
Plugin.Maui.MVVMExpress.Navigation
Shell and page navigation hosts for MVVMExpress: map a ViewModel type to a Shell route or a Page. Supported: Android, iOS, Mac Catalyst, and Windows (single-window).
INavigator, IPageNavigator, GuardedNavigator, and the URI stack live in Core. This package is MauiShellNavigator and MauiPageNavigator. Pages are constructed on IMainThread.
builder.UseMvvmExpress(o => o.UseNavigationPage((nav, _) => nav
.Map<LoginViewModel, LoginPage>("login")
.Map<HomeViewModel, HomePage>("home")).UseDialogs());
await Navigator.ResetAsync<HomeViewModel>(); // replace-root after login
await Navigator.NavigateToAsync<DetailsViewModel, DetailsArgs>(new(42));
Shell is optional (UseShell()). ResetAsync / ReplaceRootAsync replace window.Page with a NavigationPage.
Typed args become a query string via NavigationRouteTable.FormatQuery. INavigator.Stack / CanGoBack / ReplaceAsync / ResetAsync track the URI stack. Register one navigator per IWindowContext with WindowNavigatorRegistry.
Install
dotnet add package Plugin.Maui.MVVMExpress.Navigation
Target frameworks: net10.0, net10.0-android (API 21+), net10.0-ios (iOS 15+), net10.0-maccatalyst (15+), and net10.0-windows10.0.19041.0 (packed on Windows; otherwise net10.0). Requires the host package. Version 1.0.0.
Prefer UseNavigationPage() for login → host → push. Wrap with GuardedNavigator when routes need auth. See the chat-host cookbook.
Related
Prefer Prism.Maui if you need regions. Product docs: repository README. License: MIT.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-android36.0 is compatible. net10.0-browser was computed. net10.0-ios was computed. net10.0-ios26.0 is compatible. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Microsoft.Maui.Controls (>= 10.0.90)
- Plugin.Maui.MVVMExpress (>= 1.0.1)
-
net10.0-android36.0
- Microsoft.Maui.Controls (>= 10.0.90)
- Plugin.Maui.MVVMExpress (>= 1.0.1)
-
net10.0-ios26.0
- Microsoft.Maui.Controls (>= 10.0.90)
- Plugin.Maui.MVVMExpress (>= 1.0.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.1 | 27 | 9/6/2026 |
| 1.0.0 | 44 | 9/2/2026 |
| 0.6.1-preview | 42 | 9/1/2026 |
| 0.6.0-preview | 42 | 9/1/2026 |
| 0.5.0-preview | 40 | 9/1/2026 |
| 0.4.0-preview | 39 | 9/1/2026 |
| 0.3.0-preview | 45 | 9/1/2026 |
| 0.1.1-preview | 46 | 8/31/2026 |
| 0.1.0-preview | 52 | 8/31/2026 |
1.0.0: SemVer lock. UseAuth(TChallenge) on UseMvvmExpress. 15-minute getting started, cheat sheet, cookbook, Playground.