orbit-mvi
MVIKotlin
Our great sponsors
orbit-mvi | MVIKotlin | |
---|---|---|
6 | 4 | |
831 | 745 | |
4.4% | - | |
6.4 | 7.6 | |
3 days ago | 3 days ago | |
Kotlin | Kotlin | |
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.
MVIKotlin
-
Is MVI way to go for new applications with compose
Full discretion, all my new apps are built using mvi with MVIKotlin and decompose for the compose extensions for navigation animations. A sample project I have built with that architecture can be found here.
-
Is this an over-engineered way to have an Android ViewModel with MVI design pattern?
If you're looking at using MVI with kotlin in general, you should check out MVIKotlin. It provides the basic rails for the pattern with support for coroutines and reaktive.
-
Compose architecture: MVVM or MVI with Flow?
There's also MVIKotlin.
-
What name is the best for a Kotlin Multiplatform MVI framework?
Project page: https://github.com/arkivanov/MVIKotlin
What are some alternatives?
Jetpack-Compose-Orbit-MVI-Demo - Demo / Sample Android Project created with Jetpack Compose and Orbit MVI
multiplatform-compose - A demo to show usage of Jetbrains Compose in Android and iOS.
MVICore - MVI framework with events, time-travel, and more
android-oss - Kickstarter for Android. Bring new ideas to life, anywhere.
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
Decompose - Kotlin Multiplatform lifecycle-aware business logic components (aka BLoCs) with routing (navigation) and pluggable UI (Jetpack Compose, SwiftUI, JS React, etc.)
MvRx - Mavericks: Android on Autopilot
Kotlin Spotify Web API - Spotify Web API wrapper for Kotlin, Java, JS, and Native - Targets JVM, Android, JS (browser), Native (Desktop), and Apple tvOS/iOS. Includes a Spotify Web Playback SDK wrapper for Kotlin/JS, and a spotify-auth wrapper for Kotlin/Android.
mobius - A functional reactive framework for managing state evolution and side-effects.
rick-and-morty-kmp - Kotlin Multiplatform client for the Rick and Morty API with iOS and Android sample
livedata-combineutil-java - [ACTIVE] Helper function to combine LiveDatas.
PopKorn - DI can be simple. Forget about modules and components. Just use it!