Runic.Application.Views.ReactiveUI.Reactive
0.8.0-preview.5
dotnet add package Runic.Application.Views.ReactiveUI.Reactive --version 0.8.0-preview.5
NuGet\Install-Package Runic.Application.Views.ReactiveUI.Reactive -Version 0.8.0-preview.5
<PackageReference Include="Runic.Application.Views.ReactiveUI.Reactive" Version="0.8.0-preview.5" />
<PackageVersion Include="Runic.Application.Views.ReactiveUI.Reactive" Version="0.8.0-preview.5" />
<PackageReference Include="Runic.Application.Views.ReactiveUI.Reactive" />
paket add Runic.Application.Views.ReactiveUI.Reactive --version 0.8.0-preview.5
#r "nuget: Runic.Application.Views.ReactiveUI.Reactive, 0.8.0-preview.5"
#:package Runic.Application.Views.ReactiveUI.Reactive@0.8.0-preview.5
#addin nuget:?package=Runic.Application.Views.ReactiveUI.Reactive&version=0.8.0-preview.5&prerelease
#tool nuget:?package=Runic.Application.Views.ReactiveUI.Reactive&version=0.8.0-preview.5&prerelease
System.Reactive ReactiveUI integration for Runic Views
Runic.Application.Views.ReactiveUI.Reactive is the optional Runic adapter for
ReactiveUI 26's System.Reactive-compatible distribution. It provides the same
Runic View and Window mount lifecycle, typed view location and routing
projection as Runic.Application.Views.ReactiveUI (Views derive from
ReactiveRunicView<T>; Windows from RunicWindow<T>, since
ReactiveRunicWindow<T> was removed in 0.7.0-preview.7), while using types from
ReactiveUI.Reactive, ReactiveUI.Binding.Reactive, System.Reactive.Unit,
and System.Reactive.Concurrency.IScheduler.
Choose this package only when the application's ReactiveUI-facing APIs need System.Reactive's scheduler and unit types:
<PackageReference Include="ReactiveUI.Reactive" />
<PackageReference Include="Runic.Application.Views.ReactiveUI.Reactive" />
Use the default ReactiveUI and Runic.Application.Views.ReactiveUI pair for the
Primitives flavor. Do not reference both Runic adapters in one application.
The System.Reactive distribution has distinct ReactiveUI namespaces and type
identities, so ViewModels and generated clients must be built for the selected
pair. The package includes a build-time guard for a direct reference to both
Runic adapters.
AddRunicReactiveModelContext(), IRunicReactiveSchedulerProvider and
RunicReactiveSchedulerProvider are in this package's
Runic.Application.Views.ReactiveUI.Reactive namespace; they moved from
Runic.Navigation.ReactiveUI.Reactive in W250. As in the default flavor,
AddRunicReactiveModelContext() installs a model-context
RxSchedulers.MainThreadScheduler when ReactiveUI's is still a System.Reactive
default, so commands created without an outputScheduler deliver their results
and IsExecuting on the model context of the turn that runs them. Work
scheduled outside a turn runs on the replaced scheduler and is logged once per
ViewModel type (Views event 1043). A scheduler the application or platform set
is kept. An application that builds ReactiveUI with RxAppBuilder adds
WithRunicModelContext() (namespace ReactiveUI.Reactive.Builder) to that
builder. To opt out, set RxSchedulers.MainThreadScheduler, or call
WithMainThreadScheduler on ReactiveUI's builder, before
AddRunicReactiveModelContext(), or replace it afterwards. See
Model-context scheduling
for the rules.
using Runic.Application.Views.ReactiveUI.Reactive;
services.AddRunicReactiveModelContext();
SaveCommand = ReactiveCommand.Create(Save);
For an explicit IScheduler, for example in an ObserveOn, inject it or call
RunicReactiveSchedulerProvider.For(context). Generated command and interaction
contracts use this flavor's adapters, with the same typed data, operation
results, cancellation, and browser interaction support as the default flavor.
The package targets ReactiveUI.Reactive 26.0.1 with
ReactiveUI.Binding.Reactive pinned to 9.1.0. It brings
ReactiveUI.Primitives.Reactive 9.0.0 and System.Reactive 7.0.0 transitively.
ReactiveUI 26 keeps the 25 public API; see the
default adapter notes
for the Primitives 9 SubscribeSafe change.
It also brings the shared ReactiveUI.SourceGenerators 4.2.0 package; use the
normal ReactiveUI.SourceGenerators attributes with
ReactiveUI.Reactive.ReactiveObject. There is no separate Reactive-flavor
source-generator package.
The navigation adapter (WhenCurrentChanged, WhenEntryChanged and
CreateBackCommand()) is in the separate
Runic.Navigation.ReactiveUI.Reactive package, with System.Reactive.Unit as
the back command's input. This package no longer references it; add it to
navigate.
BatchBridgeSnapshots(model) and ObserveBridgeExceptions are also available in
this adapter's namespace; this flavor's commands implement the same
IHandleObservableErrors, and a generated Bridge logs their unexpected
exceptions in the same way. See
Declared failures and ThrownExceptions.
Place it after ObserveOn(modelScheduler) and before collection binding; see
the DynamicData guide.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.12)
- ReactiveUI.Binding.Reactive (>= 9.1.0)
- ReactiveUI.Reactive (>= 26.0.1)
- ReactiveUI.SourceGenerators (>= 4.2.0)
- Runic.Application.Views (= 0.8.0-preview.5)
- Splat (>= 21.0.0)
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 |
|---|---|---|
| 0.8.0-preview.5 | 57 | 10/17/2026 |
| 0.8.0-preview.4 | 382 | 10/17/2026 |
| 0.8.0-preview.3 | 383 | 10/15/2026 |
| 0.8.0-preview.2 | 66 | 10/15/2026 |
| 0.8.0-preview.1 | 93 | 10/15/2026 |
| 0.7.0-preview.9 | 333 | 10/14/2026 |
| 0.7.0-preview.8 | 90 | 10/12/2026 |
| 0.7.0-preview.7 | 46 | 10/12/2026 |