GithubHelp home page GithubHelp logo

reactiveui.uno's Introduction

Build Code Coverage #yourfirstpr



What is ReactiveUI?

ReactiveUI is a composable, cross-platform model-view-viewmodel framework for all .NET platforms that is inspired by functional reactive programming, which is a paradigm that allows you to abstract mutable state away from your user interfaces and express the idea around a feature in one readable place and improve the testability of your application.

๐Ÿ”จ Get Started ๐Ÿ› Install Packages ๐ŸŽž Watch Videos ๐ŸŽ“ View Samples ๐ŸŽค Discuss ReactiveUI

Book

There has been an excellent book written by our Alumni maintainer Kent Boogart.

NuGet Packages

Install the following packages to start building your own ReactiveUI app. Note: some of the platform-specific packages are required. This means your app won't perform as expected until you install the packages properly. See the Installation docs page for more info.

Platform ReactiveUI Package NuGet
Platform Uno ReactiveUI.Uno UnoBadge
Platform Uno ReactiveUI.Uno.WinUI UnoWinUiBadge

Sponsorship

The core team members, ReactiveUI contributors and contributors in the ecosystem do this open-source work in their free time. If you use ReactiveUI, a serious task, and you'd like us to invest more time on it, please donate. This project increases your income/productivity too. It makes development and applications faster and it reduces the required bandwidth.

Become a sponsor.

This is how we use the donations:

  • Allow the core team to work on ReactiveUI
  • Thank contributors if they invested a large amount of time in contributing
  • Support projects in the ecosystem

Support

If you have a question, please see if any discussions in our GitHub issues or Stack Overflow have already answered it.

If you want to discuss something or just need help, here is our Slack room, where there are always individuals looking to help out!

Please do not open GitHub issues for support requests.

Contribute

ReactiveUI is developed under an OSI-approved open source license, making it freely usable and distributable, even for commercial use.

If you want to submit pull requests please first open a GitHub issue to discuss. We are first time PR contributors friendly.

See Contribution Guidelines for further information how to contribute changes.

Core Team


Glenn Watson

Melbourne, Australia


Rodney Littles II

Texas, USA


Artyom Gorchakov

Moscow, Russia


Colt Bauman

South Korea


Chris Pulman

United Kingdom

.NET Foundation

ReactiveUI is part of the .NET Foundation. Other projects that are associated with the foundation include the Microsoft .NET Compiler Platform ("Roslyn") as well as the Microsoft ASP.NET family of projects, Microsoft .NET Core & Xamarin Forms.

reactiveui.uno's People

Contributors

chrispulman avatar dependabot[bot] avatar glennawatson avatar renovate[bot] avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

seanpm2001

reactiveui.uno's Issues

[BUG] Uno.WinUI RxApp.MainThreadScheduler.Schedule not on main thread

Describe the bug
Using ReactiveUI.Uno.WinUI, my ViewModel throws RuntimeExceptions like 'The application called an interface that was marshalled for a different thread', despite using ObserveOn(RxApp.MainThreadScheduler).

Also code like RxApp.MainThreadScheduler.Schedule(() => IsBusy = false), the delegate is not executed on the main thread.

Steps To Reproduce

Small solution based on latest visual studio Uno template, Windows only.

UnoWinUI_ReactiveUI_MainThreadScheduler.zip

Provide the steps to reproduce the behaviour:

  1. type something in the search textbox.
  2. A TextBlock bounded to ViewModel.SearchResult ends in the error.
    โ€‹

Expected behaviour
I am expecting the viewmodel property SearchResult to be set on the main thread, so it does not throw the 'marshalled for a different thread' exception.

Environment

  • Windows: 11 Pro 22000.1042
  • ReactiveUI Version: 18.3.1
  • ReactiveUI.Uno.WinUI Version: 18.1.20

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Pending Status Checks

These updates await pending status checks. To force their creation now, click the checkbox below.

  • chore(deps): update dependency microsoft.windowsappsdk to v1.5.240404000
  • chore(deps): update xunit-dotnet monorepo (xunit, xunit.runner.console, xunit.runner.visualstudio)
  • chore(deps): update dependency verify.xunit to v24

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

github-actions
.github/workflows/ci-build.yml
.github/workflows/lock.yml
  • dessant/lock-threads v5
.github/workflows/release.yml
nuget
src/Directory.build.props
  • Roslynator.Analyzers 4.11.0
  • stylecop.analyzers 1.2.0-beta.556
  • Nerdbank.GitVersioning 3.6.133
  • Microsoft.SourceLink.GitHub 8.0.0
  • Verify.Xunit 23.5.2
  • coverlet.msbuild 6.0.1
  • PublicApiGenerator 11.1.0
  • Microsoft.Reactive.Testing 6.0.0
  • FluentAssertions 6.12.0
  • Xunit.StaFact 1.1.11
  • xunit.runner.visualstudio 2.5.7
  • xunit.runner.console 2.7.0
  • xunit 2.7.0
  • Microsoft.NET.Test.Sdk 17.9.0
src/ReactiveUI.Uno.WinUI/ReactiveUI.Uno.WinUI.csproj
  • Uno.WinUI 5.1.80
  • Microsoft.WindowsAppSDK 1.5.240311000
  • Microsoft.Windows.SDK.BuildTools 10.0.22621.3233
src/ReactiveUI.Uno/ReactiveUI.Uno.csproj
  • Uno.UI 5.1.80
src/global.json
  • dotnet-sdk 8.0.201
  • MSBuild.Sdk.Extras 3.0.44

  • Check this box to trigger a request for Renovate to run again on this repository

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.