Reactor.Maui 4.0.14

There is a newer version of this package available.
See the version list below for details.
dotnet add package Reactor.Maui --version 4.0.14
                    
NuGet\Install-Package Reactor.Maui -Version 4.0.14
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Reactor.Maui" Version="4.0.14" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Reactor.Maui" Version="4.0.14" />
                    
Directory.Packages.props
<PackageReference Include="Reactor.Maui" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Reactor.Maui --version 4.0.14
                    
#r "nuget: Reactor.Maui, 4.0.14"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Reactor.Maui@4.0.14
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Reactor.Maui&version=4.0.14
                    
Install as a Cake Addin
#tool nuget:?package=Reactor.Maui&version=4.0.14
                    
Install as a Cake Tool

MauiReactor

Component-based UI Library built on top of .NET MAUI

Nuget

MauiReactor is .NET library written on top of .NET MAUI that allows you to write applications in pure C# using an MVU approach.

This is the classic Counter app in MauiReactor:

class CounterPageState
{
    public int Counter { get; set; }
}

class CounterPage : Component<CounterPageState>
{
    public override VisualNode Render()
        => ContentPage("Counter Sample",
            VStack(
                Label($"Counter: {State.Counter}"),

                Button("Click To Increment", () =>
                    SetState(s => s.Counter++))
            )
            .Spacing(10)
            .Center()
        );
    
}

Setting up MauiReactor from CLI

  1. Install MauiReactor templates
dotnet new install Reactor.Maui.TemplatePack
  1. Install MauiReactor hot reload console command
dotnet tool install -g Reactor.Maui.HotReload

If you already installed an old version of Reactor.Maui.HotReload you can update it to the latest using this command:

dotnet tool update -g Reactor.Maui.HotReload
  1. Create a sample project
dotnet new maui-reactor-startup -o my-new-project

and move inside the new project folder

cd .\my-new-project\
  1. Build & run the project (emulator or device must be running and configured)
dotnet build -t:Run -f net10.0-android

Under Mac, to target an iOS device/emulator, issue a command like this:

dotnet build -t:Run /p:_DeviceName=:v2:udid=<device_id> -f net10.0-ios

where the device id comes from this list:

xcrun simctl list
  1. Hot-reload console (in a different shell)
dotnet-maui-reactor -f [net10.0-android|net10.0-ios|...]
  1. Edits to code should be hot-reloaded by the application --> Enjoy!

Documentation

Documentation

Videos

Introductionary video from Solution1 conference YouTube Video Views

Interview with James Montemagno YouTube Video Views

Getting started video from Gerald Versluis YouTube Video Views

MauiReactor .NET MAUI UI July - 2024 Contribution - Task Manager App YouTube Video Views

Sample Applications

Main Samples Repository

Rive App

KeeMind App

Samples and test application

Star history

Star History Chart

How to contribute

  • Star the repository!
  • File an issue (Issues)
  • Fix bugs, add features, or improve the code with PRs
  • Help with the documentation (Documentation Repo)
Product 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-maccatalyst26.0 is compatible.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed.  net10.0-windows10.0.19041 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (8)

Showing the top 5 NuGet packages that depend on Reactor.Maui:

Package Downloads
Reactor.Maui.HotReload

MauiReactor.HotReload is the hot-reload plugin library for MauiReactor which is an MVU library (heavily inspired to ReactJS and Flutter) written on top of Microsoft Maui Controls.

Reactor.Maui.Canvas

MauiReactor.CanvasKit is MauiReactor plugin that let you author custom controls using drawing commands in a declarative approach (similar to react-native-skia).

Reactor.Maui.Maps

MauiReactor.Maps is a MauiReactor plugin for the MAUI Maps Control.

Reactor.Maui.Blazor

MauiReactor.Blazor is MauiReactor plugin that let you add BlazorWebView in your MauiReactor application.

Rearch.Reactor

A re-imagined declarative approach to application design and architecture. C# port of [rearch-dart](https://github.com/GregoryConrad/rearch-dart/).

GitHub repositories (2)

Showing the top 2 popular GitHub repositories that depend on Reactor.Maui:

Repository Stars
DevTeam/Pure.DI
Pure DI for .NET
adospace/rive-app
Sample application build with MauiReactor showing a nice UI (.NET MAUI implementation of https://designcode.io/swiftui-rive-animated-app)
Version Downloads Last Updated
4.0.18 167 4/28/2026
4.0.17 174 4/12/2026 4.0.17 is deprecated because it has critical bugs.
4.0.16 413 2/17/2026
4.0.15 254 2/17/2026
4.0.14 142 2/17/2026
4.0.13 184 2/5/2026
4.0.12-beta 135 1/25/2026
4.0.11-beta 158 1/5/2026
4.0.10-beta 133 12/29/2025
4.0.9-beta 164 12/13/2025
4.0.8-beta 270 12/12/2025
4.0.7-beta 156 12/12/2025
4.0.6-beta 152 12/12/2025
4.0.5-beta 138 12/12/2025
4.0.4-beta 162 12/11/2025
4.0.3-beta 490 11/30/2025
4.0.2-beta 228 11/25/2025
4.0.1-beta 453 11/20/2025
3.0.40 5,576 12/17/2025
3.0.39 1,680 11/25/2025
Loading failed