MVVM Clean Architecture Demo

Retrieve Data from an API using MVVM Clean Architecture and Jetpack Compose. It simply shows a list of movies fetched from an API.


Android Jetpack

  • ViewModel Store UI-related data that isn’t destroyed on app rotations. Easily schedule asynchronous tasks for optimal execution.

  • Lifecycle Create a UI that automatically responds to lifecycle events.

  • DataBinding Declaratively bind observable data to UI elements.

  • LiveData Build data objects that notify views when the underlying database changes.


  • Retrofit2 Type-safe HTTP client for Android and Java by Square, Inc.


  • Coil An image loading library.


  • Kotlin Coroutines Coroutines is a rich library for coroutines developed by JetBrains. It contains a number of high-level coroutine-enabled primitives that this guide covers, including launch, async and others.


  • Dagger Hilt limit your project’s complexity as it scales up.


View Github