Updating my tech stack: RxJava vs Flow

This page summarizes the projects mentioned and recommended in the original post on /r/androiddev

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • Reaktive

    Kotlin multi-platform implementation of Reactive Extensions

  • I will say on the topic of multiplatform, rxjava isn't directly supported. However there is a multiplatform Rx library called reaktive which has way better testing support compared to coroutines at the moment. although if multiplatform is something you're interested in doing I would start the project off rather than do it later to save time in the long run. If you're interested, the mpp Todo sample is a good example demonstrating a lot of everything.

  • compose-multiplatform

    Compose Multiplatform, a modern UI framework for Kotlin that makes building performant and beautiful user interfaces easy and enjoyable.

  • I will say on the topic of multiplatform, rxjava isn't directly supported. However there is a multiplatform Rx library called reaktive which has way better testing support compared to coroutines at the moment. although if multiplatform is something you're interested in doing I would start the project off rather than do it later to save time in the long run. If you're interested, the mpp Todo sample is a good example demonstrating a lot of everything.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • kotlinx.coroutines

    Library support for Kotlin coroutines

  • The catch operator ignores CancellationException which is used for cooperative cancellation in coroutines and flows. If you use try/catch, make sure you're not accidentally swallowing those exceptions. The same goes for runCatching, which catches all Throwables.

  • turbine

    A small testing library for kotlinx.coroutines Flow

  • Turbine is an excellent library for testing flows and is pretty much required imo. But overall Rx is much easier to test; debugging works much more consistently and the built in testing functions are great.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts