Getting Started¶
ReactiveUI is a family of .NET libraries. Each one solves one job, and you can use them together or on their own. This page helps you pick where to start. Installation lists every package.
Pick a starting point¶
| You want to | Start with |
|---|---|
| Build an app with the model-view-viewmodel (MVVM) pattern | ReactiveUI |
| Keep a view and a view model in step, with or without ReactiveUI | ReactiveUI.Binding |
| Write less property and command code in a view model | ReactiveUI.SourceGenerators |
| Check user input in a view model | ReactiveUI.Validation |
| Navigate by naming view models | Sextant |
| Register services and write logs on every platform | Splat |
| Work with values that arrive over time, such as events and timers | ReactiveUI.Primitives |
| Call a REST API from a C# interface | Refit |
| Cache data and settings on the device | Akavache |
How the libraries fit together¶
ReactiveUI.Primitives and Splat sit at the bottom. Several libraries use streams from ReactiveUI.Primitives, and ReactiveUI finds its services through Splat. A stream is a series of values that arrive over time. Reactive programming explains streams from the start.
ReactiveUI builds on both. It uses ReactiveUI.Binding for bindings and view location, and ReactiveUI.SourceGenerators to write property and command code; it installs both for you. ReactiveUI.Validation and Sextant add to ReactiveUI.
Refit and Akavache do not need ReactiveUI. You can use them in any .NET app.
Next steps¶
- Install the packages you need.
- Follow the getting started page of the library you picked.
- Browse the samples to see complete apps.
- Ask questions in the ReactiveUI Slack.