Project Structure
ReactiveUI
ReactiveUI is an MVVM framework that integrates with the Reactive Extensions for .NET to create elegant, testable user interfaces that run on any mobile or desktop platform. This is the base package with the core platform implementations.
ReactiveUI.SourceGenerators (recommended)
The ReactiveUI.SourceGenerators package provides compile-time code generation for ReactiveUI, including reactive properties ([Reactive]
), observable-as-property helper properties ([ObservableAsProperty]
), ReactiveCommands ([ReactiveCommand]
), and view wiring ([IViewFor]
). Prefer this over Fody-based solutions for new projects.
ReactiveUI.Maui
The ReactiveUI.Maui package contains the ReactiveUI platform-specific extensions for Microsoft .NET MAUI.
ReactiveUI.Testing
The ReactiveUI.Testing package provides extensions for testing ReactiveUI-based applications.
ReactiveUI.WinForms
The ReactiveUI.WinForms package contains the ReactiveUI platform-specific extensions for Windows Forms.
ReactiveUI.WinUI
The ReactiveUI.WinUI package contains the ReactiveUI platform-specific extensions for WinUI.
ReactiveUI.Wpf
The ReactiveUI.Wpf package contains the ReactiveUI platform-specific extensions for Windows Presentation Foundation (WPF).
ReactiveUI.Fody (legacy)
The ReactiveUI.Fody package is a Fody extension that generates property change notifications and ObservableAsPropertyHelpers. It remains available but is no longer the recommended approach for new projects.
ReactiveUI.Fody.Analyzer (legacy)
The ReactiveUI.Fody.Analyzer package is a Roslyn analyzer that checks usage of the Fody extension.
ReactiveUI.Fody.Helpers (legacy)
The ReactiveUI.Fody.Helpers package extends Fody helpers. Prefer SourceGenerators going forward.
ReactiveUI.XamForms (legacy)
The ReactiveUI.XamForms package contains the ReactiveUI platform-specific extensions for Xamarin.Forms. Xamarin platforms are legacy and supported for maintenance only.