https://kotlinlang.org logo
#orbit-mvi
Title
# orbit-mvi
s

Sami Eljabali

06/15/2021, 9:55 PM
Hi folks! 👋 In looking at the framework I'm rather impressed & am considering up-taking it for a professional project. I can't help but wonder why BabylonHealth dropped support for the project. I couldn't find an article describing the thought process there. Were there pain-points with the framework in production? Was MVVM found easier to deal with in the long run? etc. Any insights would help with my decision process & sell to management. Thanks!
❤️ 2
m

Mikolaj Leszczynski

06/16/2021, 6:30 AM
This one is easy - Babylon moved entirely to React Native 😉
🙀 2
both the original authors (me and a colleague) left the company too so there would have been no one to support it
overall while Babylon still had native apps we were heavily invested in MVI on Android (albeit a previous, RxJava based version of Orbit)
@Sami Eljabali out of curiosity, what prompted you to choose this framework over something like Mavericks or mvikotlin?
s

Sami Eljabali

06/16/2021, 7:51 AM
Thanks for the reply @Mikolaj Leszczynski. I dearly appreciate it.
My team is currently prototyping out smaller apps using Orbit & Mavericks. I haven't come across mvikotlin before. I'll check it out too & see if it's worth prototyping against.
👍 1
I saw Orbit MVI a couple of years back. I did the unwise thing to reinvent MVI via Rx per Jake Wharton's video.
That was a real pain to get done. haha
m

Mikolaj Leszczynski

06/16/2021, 7:53 AM
oh my. We did the exact same thing with Orbit 1
it worked but it was a complete eyesore
😄 2
which is why we decided to go simple syntax and coroutines all the way
💰 2
s

Sami Eljabali

06/16/2021, 7:54 AM
Your video show casing why that's not the smartest idea got me back into checking out Orbit MVI once more.
m

Mikolaj Leszczynski

06/16/2021, 7:54 AM
awesome, glad you thought the video was useful
I’m not sure why there’s this emphasis on MVI using streams in a lot of implementations out there
s

Sami Eljabali

06/16/2021, 7:55 AM
Right. It's hard to drop Rx after having spent so many years getting the hang of it.
I'm personally over it by now haha
😄 2
Looking forward the prototyping, I'll report back with my feedback if I got anything constructive to say.
Thanks again!
m

Mikolaj Leszczynski

06/16/2021, 8:05 AM
No worries, I’d be happy to help further.
a

appmattus

07/07/2021, 10:28 PM
@Sami Eljabali I’m curious to know how your evaluation has been getting on. I’m actually on the process of writing up a comparison of the main MVI style frameworks on Android. My main gripe with Mavericks was its support for DI. Specifically when trialling it I felt forced to convert my project to Dagger because of the lack of handling for Koin, and even then getting it working specifically with Dagger Hilt still required a lot of boilerplate code. Personally I found MVIkotlin overly complex with the need to write too many things even in a simple list/detail app.
s

Sami Eljabali

07/08/2021, 6:32 AM
@appmattus I would love to read your write up when done. Mavericks had the least amount of documentation to the point of it being worrisome. Furthermore, Mavericks locked you in as you mention to their way of doing things. I haven’t looked into MviKotlin. Orbit looked like the more customizable and easy to read framework. Not sure if it supports process death as Mavericks does. Also a bit concerned it gets phased out down the road due to a major company not supporting it, but because of how it’s written seems a lot more easy to carry on its maintenance if need be. Net net, I liked orbit.
👏 1
👍 1
m

Mikolaj Leszczynski

07/08/2021, 7:08 AM
If you use orbit with a view model we can save the state for you provided it's parcelable
❤️ 1
If that's what you meant by process death
3 Views