<@UHAJKUSTU> When playing around with MVI-Kotlin w...
# mvikotlin
s
@Arkadii Ivanov When playing around with MVI-Kotlin with coroutines and not having a reaktive dependency, I encountered some hurdles here and there, when I explored more, I found that mvi-Kotlin itself makes use of reaktive under the hood, for an instance
Store<>
exposes functions accepting parameter of Observable which is not accessible in my project unless I add a dependecy on reaktive but, decompose have functions like
Children()
which accept Value for child stack.
now the Ext Function for
Store<>.asValue()
uses Disposable again a reaktive component, not accessible if I dont have a direct dependency on reaktive, if I use
*Store<>*.*asFlow()*
*(which again uses reaktive underhood)* I can make Components State as a Flow, but remember Root Component had childStack as Value, which just triggers me subconsiously of not-consistent types,(ideally either Flow or Value) Its not my intention for this to seem as a rant, but it just seems I will have to depend on reaktive one way or another. Am I missing something here ?
a
MVIKotlin doesn't depend on Reaktive nor Coroutines. Only two optional extension modules depend, you choose what module to add depending on what async framework you are using: • mvikotlin-extensions-coroutines • mvikotlin-extensions-reaktive Same with Decompose, it doesn't depends on Reaktive or Coroutines at all.
s
Ohhh, maybe I understood something wrong, I thought
com.arkivanov.mvikotlin.rx
is accessible when I have a reaktive dependency r8 ?
a
It is, but it's not the separate library Reaktive. It's just a simple MVIkotlin's abstraction to avoid dependencies on Coroutines or Reaktive .
s
ohhh, I was correlating rx to Reaktive (==), which isnt true, its an abstraction layer, sorry for the whole confusion 😅, thanks 👍 .
a
No worries, feel free to ask!