Skip to content

Contributing to ReactiveUI

ReactiveUI is a collection of around 15 actively maintained projects under the reactiveui GitHub organisation. We welcome contributions of all kinds — bug fixes, features, documentation, and test coverage.

Quick start

  1. Find something to work on — check issues labelled help wanted across the org
  2. For anything beyond a trivial fix, open an issue or discussion first — see pull requests for why this matters
  3. Read the building & testing guide to get a repo compiling locally
  4. Follow the code style and commit conventions
  5. Open a pull request

Key repositories

RepositoryDescription
ReactiveUICore framework — ReactiveObject, ReactiveCommand, bindings
PrimitivesStreams, operators, sequencers and extension helpers that ReactiveUI is built on
splatCross-platform utilities and service location
DynamicDataReactive collections
ReactiveUI.ValidationValidation helpers
ReactiveUI.SourceGeneratorsSource generators for ReactiveUI
AkavacheAsync key-value store
refitType-safe REST client
SextantView-model first navigation
FusilladeHTTP request prioritisation for mobile
actions-commonShared CI workflows and GitHub Actions

Where to ask questions

Use GitHub Discussions. Post in the discussion section of the specific repo your question relates to. For general questions, use the main ReactiveUI discussions.

Code of Conduct

All participants are expected to follow our Code of Conduct. If you experience or witness unacceptable behaviour, contact us at [email protected].

License

ReactiveUI projects are released under the MIT license. All new source files must include the license header — StyleCop will fail the build if it is missing.