Samples
Runnable applications:
github.com/Skymly/Observables.Samples
Run (NuGet, default)
Requires .NET 8 only — no sibling Observables clone.
powershell
git clone https://github.com/Skymly/Observables.Samples.git
cd Observables.Samples
dotnet run --project Observables.Samples.Events
dotnet run --project Observables.Samples.Events.Reactive
dotnet run --project Observables.Samples.RestAPI
dotnet run --project Observables.Samples.RestAPI.Reactive
dotnet run --project Observables.Samples.SignalR
dotnet run --project Observables.Samples.Mqtt
# Avalonia routed events (desktop only; not run in CI)
dotnet run --project Observables.Samples.Events.RoutedCI uses Nuke ./build.cmd Ci (console samples only). Default NuGet version 0.1.0-preview4 (Events, RestAPI, SignalR, Mqtt).
Projects
| Sample | Demonstrates |
|---|---|
| Observables.Samples.Events | Events(), EventHandlers(), multiple subscribers on one stream |
| Observables.Samples.Events.Reactive | IObservable from classic events |
| Observables.Samples.Events.Routed | Avalonia AttachedRoutedEvent + <ObservableRoutedEvents> |
| Observables.Samples.RestAPI | Task / Observable<T>, list GET, ApiException with MockHttp |
| Observables.Samples.RestAPI.Reactive | IObservable<T> + FirstAsync().ToTask(), 404 handling |
| Observables.Samples.SignalR | [Hub] interface, HubService.For factory registration (CI skips live hub) |
| Observables.Samples.Mqtt | [Mqtt] topic proxy, MqttService.For factory registration (CI skips live broker) |
Local generator development
When ../Observables/Observables.slnx exists:
powershell
dotnet build -p:UseLocalObservables=true
dotnet run --project Observables.Samples.Events -p:UseLocalObservables=trueSee the samples repo build/README-LocalSourceGenerators.md.