© 2026 Hashnode
Background Android development often involves complex state management and repetitive UI updates. ViewModels offer such structure and testability to address these challenge and many others. With LiveData, UI changes automatically synchronizes with Vi...

Managing states in Android can be complex, especially when dealing with asynchronous and streaming data. In this article, we'll look at how we can remove this complexity using kotlin flows. Flows, What are they? In coroutines, a flow is a type that c...
