# dotnet/reactive

The Reactive Extensions for .NET

Repository: https://github.com/dotnet/reactive
Canonical: https://ross.abutalabs.com/products/reactive
Homepage: http://reactivex.io
Language: C#
License: MIT
License Family: permissive
Last push: 2026-07-17T13:44:45+00:00

## Health v2 (maintenance only)
Score: 94/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 93, release rhythm 93, longevity 100
- inputs: {"age_days": 4747, "days_push": 47, "days_rel": 47, "gap_med": 5, "n_releases_24m": 20}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 7189, forks 798 (observed 2026-08-28T04:09:56.521157+00:00)

## What it is
The Reactive Extensions for .NET (Rx.NET) is a family of libraries providing composable, declarative event-driven programming via observable streams and LINQ-style operators. It includes System.Reactive, the experimental AsyncRx.NET, the Interactive Extensions (Ix), and System.Linq.Async for IAsyncEnumerable.

## Use cases
- process real-time event streams in .NET
- compose asynchronous data streams with LINQ operators
- handle UI events reactively
- build cloud-native stream processing pipelines
- simplify concurrency and threading with schedulers
- apply LINQ operators to IAsyncEnumerable

## When to choose
- you need composable event-driven or stream-based programming in .NET
- you want declarative handling of async data with rich operators
- you need robust async error handling and scheduler-based concurrency control

## When to avoid
- your project uses a non-.NET language (consider RxJava or RxJS instead)
- you need only simple async/await patterns without event streams
- you require a stable async-native Rx implementation (AsyncRx.NET is still experimental)

## Facets
- artifact type: library
- maturity: active
- function: concurrency, streaming, developer-tools
- domain: developer-tools, backend, frontend
- platform: dotnet, cross-platform
- tags: reactive-programming, observables, linq, event-driven, async, real-time

## Member repositories
- dotnet/reactive (main) score 94

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:09:56.521157+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:39:54.043312+00:00, confidence not recorded.
  - readme: https://github.com/dotnet/reactive (fetched 2026-08-28T04:09:56.521157+00:00, sha 638e30c861aa)
  - homepage: http://reactivex.io (fetched 2026-08-29T08:35:04.582796+00:00, sha 82cef0299f27)
  - site_page: https://reactivex.io/documentation/observable.html (fetched 2026-08-29T08:35:04.586032+00:00, sha 9a5601c77b6d)
  - site_page: https://reactivex.io/documentation/operators.html (fetched 2026-08-29T08:35:04.589334+00:00, sha a0acd380d044)
  - site_page: https://reactivex.io/documentation/single.html (fetched 2026-08-29T08:35:04.592130+00:00, sha 5cb896bf348b)
  - site_page: https://reactivex.io/documentation/subject.html (fetched 2026-08-29T08:35:04.594655+00:00, sha 4aee216f65c4)
  - site_page: https://reactivex.io/documentation/scheduler.html (fetched 2026-08-29T08:35:04.597442+00:00, sha 12a5c3e9ebce)
- Data as of 2026-08-30T08:39:29.467469+00:00.
