ReactiveUI — кроссплатформенный фреймворк для разработки приложений на платформе .NET, реализующий паттерн MVVM и построенный с использованием принципов реактивного программирования. Он предоставляет набор библиотек и абстракций для связывания представлений и моделей представления, управления состоянием и реакций на асинхронные события, опираясь на концепции потоков данных и операторы из Reactive Extensions. Фреймворк предназначен для упрощения создания тестируемого, композиционного и декларативного пользовательского интерфейса в настольных, мобильных и веб-приложениях, поддерживая несколько UI-платформ через адаптеры и привязки.
Исторически ReactiveUI возник как сообщественное решение для интеграции реактивных потоков в архитектуру MVVM .NET-приложений и развивался посредством открытой разработки. Основная цель — предоставить разработчикам средства для уменьшения связности, явного управления потоками данных и обработки сложных сценариев асинхронности без большого объёма шаблонного кода. Фреймворк включает вспомогательные типы для создания реактивных команд, наблюдаемых свойств и безопасного взаимодействия между потоками, а также механизмы для упрощённого тестирования логики представления.
- Поддержка MVVM: инструменты для реализации моделей представления, их жизненного цикла и привязки к представлениям.
 - Reactive Extensions: широкое использование IObservable и операторов Rx для обработки событий, потоков данных и асинхронных операций.
 - ReactiveCommand: структура для создания команд, которые инкапсулируют асинхронную логику, управление состоянием и возможность отмены.
 - Наблюдаемые свойства: удобные API для создания свойств, уведомляющих об изменениях и комбинируемых в реактивные последовательности.
 - Композиция и тестируемость: дизайн, ориентированный на чистые, легко тестируемые модели представления с минимальными зависимостями от UI-платформы.
 - Кроссплатформенность: адаптеры и интеграции для популярных UI-фреймворков .NET (например, WPF, Xamarin/MAUI, Avalonia), обеспечивающие повторное использование логики.
 - Потокобезопасность и синхронизация: механизмы для безопасного взаимодействия с потоками UI и переключения контекста выполнения при обработке событий.
 - Утилиты для привязки: расширения и вспомогательные функции, упрощающие связывание данных между View и ViewModel, включая преобразования и валидацию.
 - Сообщество и расширяемость: модульная архитектура, позволяющая добавлять собственные расширения, адаптеры и интеграции с другими библиотеками.
 - Документация и примеры: набор шаблонов и примерных реализаций типичных сценариев MVVM с использованием реактивных паттернов.