reactiveui/ReactiveUI
An advanced, composable, functional reactive model-view-viewmodel framework for all .NET platforms that is inspired by functional reactive programming. ReactiveUI allows you to abstract mutable state away from your user interfaces, express the idea around a feature in one readable place and improve the testability of your application. observed · 2026-08-28
Health v2 · maintenance only
94/100
- Activity 99
- Release rhythm 84
- Longevity 100
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: 33.5
- age_days: 5927
- days_rel: 31
- days_push: 7
- n_releases_24m: 15
Adoption not part of the score
8537 stars · 1151 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-29, confidence not recorded
ReactiveUI is a composable, functional reactive model-view-viewmodel (MVVM) framework for all .NET platforms, built on Reactive Extensions. It lets developers abstract mutable state away from UIs, express feature logic in one readable place, and improve testability across WPF, WinForms, WinUI, MAUI, Avalonia, Uno, Blazor, and mobile platforms.
Use cases
- build cross-platform .NET apps with the MVVM pattern
- handle async commands and cancellable user actions in view models
- observe and react to property changes declaratively
- write deterministic unit tests for time-based UI logic
- reduce INotifyPropertyChanged boilerplate with source generators
- share view model logic between WPF, MAUI, and Avalonia apps
When to choose
- you're building .NET applications with complex asynchronous or event-driven UI state
- you want testable view models with controllable schedulers and time manipulation
- you need one MVVM framework across WPF, WinUI, MAUI, Avalonia, Uno, or Blazor
- you prefer declarative, composable reactive pipelines over imperative event handling
When to avoid
- your team is unfamiliar with reactive programming and has no time to learn Rx
- you're building a simple CRUD app where plain data binding suffices
- you're maintaining a legacy Xamarin app, which is no longer supported
- you prefer a lightweight MVVM toolkit without a reactive dependency
Facets
framework · maturity stable
state-management frontend-framework ui-components testing cross-platform mobile-development desktop-applications web-development developer-tools dotnet windows cross-platform mvvm reactive-programming reactive-extensions csharp frp source-generators avalonia maui wpf winui android ios desktop mobile
8 sources
- readme: https://github.com/reactiveui/ReactiveUI · fetched 2026-08-28 · 8e7266bdac4d
- homepage: https://www.reactiveui.net · fetched 2026-08-29 · f71d075f5be2
- site_page: https://www.reactiveui.net/documentation · fetched 2026-08-29 · eb76d32e0815
- site_page: https://www.reactiveui.net/documentation/getting-started · fetched 2026-08-29 · 95aa63ecbe9b
- site_page: https://www.reactiveui.net/documentation/handbook/testing · fetched 2026-08-29 · dddcb6f1a550
- site_page: https://www.reactiveui.net/documentation/getting-started/installation · fetched 2026-08-29 · 48e547def246
- site_page: https://www.reactiveui.net/documentation/handbook/commands · fetched 2026-08-29 · 1384ee534354
- site_page: https://www.reactiveui.net/documentation/handbook/view-models/boilerplate-code · fetched 2026-08-29 · 26013ddcf506
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| reactiveui/ReactiveUI | main | 94 |
For agents
markdown · JSON · MCP: product_card(name="reactiveui/ReactiveUI")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem