Skip to content

Sample app with MVVM architecture using LiveData, DataBinding, Room, Coroutines, Flow, Retrofit, Hilt etc.

Notifications You must be signed in to change notification settings

mayankagarwal09/mvvm-sample-app

Repository files navigation

mvvm-sample-app

About

The App Loads list of items from a mock API and shows in a recyclerView using both LinearLayout and GridLayout. It also has a bottom navigation bar and a toolbar with searchView. Supports Offline caching of data using Room and NetworkBoundResource.

ScreenShots

APK

You can Install and test app from below 👇

APK

Built With 🛠

  • Kotlin - First class and official programming language for Android development.
  • Coroutines - For asynchronous and more..
  • Flow - A cold asynchronous data stream that sequentially emits values and completes normally or with an exception.
  • Hilt-Dagger - Standard library to incorporate Dagger dependency injection into an Android application.
  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
    • LiveData - Data objects that notify views when the underlying database changes.
    • ViewModel - Stores UI-related data that isn't destroyed on UI changes.
    • DataBinding - Bind UI components in the layouts to data sources in the app using a declarative format rather than programmatically.
    • Room - SQLite object mapping library.
  • Retrofit - A type-safe HTTP client for Android and Java.
  • Moshi - A modern JSON library for Kotlin and Java.
  • Moshi Converter - A Converter which uses Moshi for serialization to and from JSON.
  • Material Components for Android - Modular and customizable Material Design UI components for Android.

Architecture

This app uses MVVM (Model View View-Model) architecture.

About

Sample app with MVVM architecture using LiveData, DataBinding, Room, Coroutines, Flow, Retrofit, Hilt etc.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages