Are there any 3rd party State Management libs for Jetpack Compose?

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

Our great sponsors
  • Appwrite - The Open Source Firebase alternative introduces iOS support
  • SonarLint - Deliver Cleaner and Safer Code - Right in Your IDE of Choice!
  • Scout APM - Less time debugging, more time building
  • Decompose

    Kotlin Multiplatform lifecycle-aware business logic components (aka BLoCs) with routing functionality and pluggable UI (Jetpack Compose, SwiftUI, JS React, etc.), inspired by Badoos RIBs fork of the Uber RIBs framework

    If you're looking for a third party state management solution similar to bloc, you might want to check out MVI Kotlin. It can also be used in tandem with decompose to manage the routing state as well.

  • riverpod

    A simple way to access state while robust and testable.

    Hi there! I googled a lot before asking this question but unfortunately I did not find an answer. I developed few Flutter apps using libs like Riverpod and Bloc because native way of state management was not very flexible/scalable for me. Are there any similar libs for Jetpack Compose? Thank you.

  • Appwrite

    Appwrite - The Open Source Firebase alternative introduces iOS support. Appwrite is an open source backend server that helps you build native iOS applications much faster with realtime APIs for authentication, databases, files storage, cloud functions and much more!

  • bloc

    A predictable state management library that helps implement the BLoC design pattern

    Hi there! I googled a lot before asking this question but unfortunately I did not find an answer. I developed few Flutter apps using libs like Riverpod and Bloc because native way of state management was not very flexible/scalable for me. Are there any similar libs for Jetpack Compose? Thank you.

  • mobx.dart

    MobX for the Dart language. Hassle-free, reactive state-management for your Dart and Flutter apps.

    The native way of state management in Jetpack Compose is `mutableStateOf` and `derivedStateOf`. It is an analogue of mobx.dart. Are you familiar with these concepts? What issues did you face with?

  • Decompose

    Kotlin Multiplatform lifecycle-aware business logic components (aka BLoCs) with routing functionality and pluggable UI (Jetpack Compose, SwiftUI, JS React, etc.) (by arkivanov)

    Also, a state should be placed somewhere. I recommend Decompose components for the role of such state containers.

  • KotlinBloc

    A predictable state management library for Kotlin and Jetpack Compose, using the BLoC design pattern.

    I've never used it but someone shared their own Kotlin implementation of BloC on here a while ago which might be worth checking out.

  • workflow

    A Swift and Kotlin library for making composable state machines, and UIs driven by those state machines. (by square)

    I've been playing around with Square's Workflow in a side project and have liked it a lot.

  • SonarLint

    Deliver Cleaner and Safer Code - Right in Your IDE of Choice!. SonarLint is a free and open source IDE extension that identifies and catches bugs and vulnerabilities as you code, directly in the IDE. Install from your favorite IDE marketplace today.

  • molecule

    Build a StateFlow stream using Jetpack Compose (by cashapp)

    There's also CashApps Molecule which just builds off the existing state management tools in Compose. I haven't played around with it yet but it looks cool.

  • MVIKotlin

    Extendable MVI framework for Kotlin Multiplatform with powerful debugging tools (logging and time travel), inspired by Badoo MVICore library (by badoo)

    If you're looking for a third party state management solution similar to bloc, you might want to check out MVI Kotlin. It can also be used in tandem with decompose to manage the routing state as well.

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