orbit-mvi
livedata-combineutil-java
Our great sponsors
orbit-mvi | livedata-combineutil-java | |
---|---|---|
6 | 11 | |
831 | 9 | |
4.9% | - | |
6.4 | 0.0 | |
7 days ago | over 2 years ago | |
Kotlin | Java | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
orbit-mvi
-
MVI with usecase instead of repository?
Go over to the docs for orbit-mvi and show how it has these flaws.
-
I ported the Spotify Mobius GitHub wiki to GitHub Pages + MkDocs with light and dark modes. I just created the issue and filed the PR. Let's see what happens!
This looks great! Semi-related question... have you evaluated other MVI frameworks like Mavericks / Uniflow / Orbit? What made you decide on Mobius?
-
Implementing Jetpack Compose + Orbit MVI
Name Link Koin https://insert-koin.io Jetpack Compose https://developer.android.com/jetpack/compose Navigation Compose https://developer.android.com/jetpack/compose/navigation Orbit MVI https://orbit-mvi.org Coil https://coil-kt.github.io/coil/ Room https://developer.android.com/training/data-storage/room?hl=ja Kotlin-Serialiazation https://github.com/Kotlin/kotlinx.serialization PokemonGO-Pokedex https://github.com/Biuni/PokemonGO-Pokedex
-
Compose architecture: MVVM or MVI with Flow?
Do you recommend Mavericks? I've been meaning to evaluate it and orbit-mvi.
-
What is wrong with MVVM?
Everything in MVI is just more code that does nothing (see how most MVI frameworks are basically just a wrapper over state.value = state.copy() like in Orbit or MvRx which you wouldn't even need if you used combiners) and instead adds unnecessary constraints over MVVM that don't help you at all. The "sealed class inputs" are basically a reinvention of calling interface functions except you create classes for it, despite there being no asynchronicity when you have a View -> ViewModel communication.
-
Why is there nothing like Redux, Vuex, MobX, etc... for Android?
Redux is called MVI in Android world. There are plenty of MVI libs: MVICore, orbit-mvi, mobius and other.
livedata-combineutil-java
-
How can I use view model in helper class?
3.) the MutableLiveDatas in the ViewModel initialized by SavedStateHandle.getLiveData should contain the fromDate and the toDate, and with the combination of these LiveDatas you can evaluate what to show on the screen
-
Jetpack Compose is now 1.0: announcing Android’s modern toolkit for building native UI
well the third-party libraries help but internally it's just MediatorLiveData which does ship with LiveData
-
What are the must go state management tools for an android kotlin app? React native we have redux, angular we have services with observables, etc…
If you're using Google's defaults, then you use a ViewModel created by Hilt and getting a reference to a SavedStateHandle, your state would be created of multiple MutableLiveDatas (each holding 1 property) created via savedStateHandle.getLiveData(), then you use MediatorLiveData (you can use a library like this or this) to combine the changes of the mutable properties into a single immutable state object observed by the "UI" (read: the view controller, aka the Fragment) using the viewLifecycleOwner property of Fragments.
-
Kotlin Flow cheat sheet
MutableLiveData (java combiner/kotlin combiner) == BehaviorRelay (kotlin combiner) == MutableSharedFlow (kotlin combiner) conceptually, so it's not important to me which one it is, as long as you can throw combiners at it.
-
I want to sort a LiveData<List<Players>> from Room in my Scorekeeper app. Do I need to be using Transformations? MutableLiveData? MediatorLiveData? Or something else?
Yep, that's why I have this kotlin combiner/java combiner for LiveData, but map/switchMap also rely on MediatorLiveData.
- Feedback on my latest Android project
-
What is wrong with MVVM?
people exposing 11 public LiveData fields for 11 private MutableLiveData fields instead of using MediatorLiveData as combiners to reduce the number of exposed LiveData fields
-
Architecture Question MVVM + DataBinding
While it is possible to combine these properties into a single emission using MediatorLiveData, if the MutableLiveData is exposed as MutableLiveData, then the fields can be directly two-way databound to XML, which is kinda the original goal and purpose of databinding.
-
Weekly Questions Thread - January 12, 2021
If you need help with combiners you can also check https://github.com/Zhuinden/livedata-combineutil-java/
-
Confused on how to pass data to my recyclerView
If you can't join them, you can combine LiveDatas and then map them to a common representation so that the adapter can treat it as a single list. And use itemViewType to determine which view to show per each item.
What are some alternatives?
Jetpack-Compose-Orbit-MVI-Demo - Demo / Sample Android Project created with Jetpack Compose and Orbit MVI
tivi - Tivi is a TV show tracking Android app, which connects to trakt.tv
MVIKotlin - Extendable MVI framework for Kotlin Multiplatform with powerful debugging tools (logging and time travel)
redux - Redux ported to java/android (name tbd)
MVICore - MVI framework with events, time-travel, and more
MvRx - Mavericks: Android on Autopilot
MVI-Coroutines-Flow - Play MVI with Kotlin Coroutines Flow | MVI pattern on Android using Kotlin Coroutines Flow | Dagger Hilt DI | Koin DI | SharedFlow | StateFlow | Arrow.kt Android Sample
cwac-security - CWAC-Security: Helping You Help Your Users Defend Their Data
rx-combinetuple-kt - [ACTIVE] Helper function to combine RxJava observables into tuples.
mobius - A functional reactive framework for managing state evolution and side-effects.
Clother - Clother is an Android client-server app for swapping unused clothes.