[![Build Status](https://worldbeater.visualstudio.com/Camelotia/_apis/build/status/ReactiveMvvm-CI)](https://worldbeater.visualstudio.com/Camelotia/_build/latest?definitionId=4) [![Pull Requests](https://img.shields.io/github/issues-pr/worldbeater/reactivemvvm.svg)](https://github.com/worldbeater/reactivemvvm/pulls) [![Issues](https://img.shields.io/github/issues/worldbeater/reactivemvvm.svg)](https://github.com/worldbeater/reactivemvvm/issues) ![License](https://img.shields.io/github/license/worldbeater/reactivemvvm.svg) ![Size](https://img.shields.io/github/repo-size/worldbeater/reactivemvvm.svg) [![Code Coverage](https://img.shields.io/azure-devops/coverage/worldbeater/camelotia/4.svg)](https://worldbeater.visualstudio.com/Camelotia/_build/latest?definitionId=4) # ReactiveMvvm A truly cross-platform app example created using the ReactiveUI .NET MVVM framework, ReactiveUI.Fody and most popular XAML UI frameworks. The app implements the MVVM architecture extended with reactive programming and assembly weaving. It was built to demonstrate how to avoid writing boilerplate code when working with the `INotifyPropertyChanged` interface and how to create portable and maintainable view models. Article on Medium: https://medium.com/@worldbeater/reactive-ui-fody-cross-platform-forms-7b501d79f46b | AvaloniaUI | Xamarin.Forms | Universal Windows Platform | | --------------- | --------- | -------------- | | | | | | WPF | Windows Forms | Terminal.Gui | | --------------- | --------- | -------------- | | | | | | ASP .NET Core via Blazor or Blazor.Wasm | | --------------- | | | ## Technologies and Tools Used - ReactiveUI modern MVVM framework - Reactive Extensions for the .NET platform - ReactiveUI.Fody for `INotifyPropertyChanged` injections - xUnit tests on .NET Core - FluentAssertions to improve tests readability - NSubstitute for stubs and mocks - NukeBuild for building cross-platform .NET projects using C# - AvaloniaUI for Linux and MacOS - Citrus bright and modern AvaloniaUI theme - Xamarin.Forms for Android, iOS and Tizen - Universal Windows Platform for Windows 10 - ASP .NET Core Blazor bringing ReactiveUI to the Web - Windows Presentation Foundation - Windows Forms - JetBrains Rider and Microsoft Visual Studio 2019 IDEs