Skip to content

A Test App Featuring MVVM ,Hilt , Remote Mediator , Room , Naviagiotn Comp

Notifications You must be signed in to change notification settings

rahat14/Verse_App_MVVM

Repository files navigation

Verse_App_MVVM

A Test App Featuring MVVM,Hilt,Remote Mediator,Room,Navigation Component,Retrofit

Tech stack & Open-source libraries

  • 100% Kotlin based, Coroutines + Flow for asynchronous.
  • JetPack🚀
    • ViewBinding - View binding is a feature that allows you to more easily write code that interacts with views.
    • LiveData With Flow - notify domain layer data to views.
    • Lifecycle - dispose of observing data when lifecycle state changes.
    • ViewModel - UI related data holder, lifecycle aware.
    • Hilt - To simplify Dagger-related infrastructure for Android apps.
    • Room - Room is an ORM, Object Relational Mapping library.
  • Retrofit2 & OkHttp3 - construct the REST APIs and paging network data.
  • Gson - Gson is a Java library that can be used to convert Java Objects into their JSON representation.
  • okhttp-logging-interceptor - logs HTTP request and response data.
  • kotlinx.coroutines - Library Support for coroutines,provides runBlocking coroutine builder used in tests for Android.

Architecture

  • MVVM Architecture (View - ViewBinding - ViewModel - Model)
  • Repository pattern

Core Feature

alt text

-A RemoteMediator implementation helps load paged data from the network into the database, but doesn't load data directly into the UI. Instead, the app uses the database as a single source of truth. In other words, the app only displays data that has been cached in the database. A PagingSource implementation (for example, one generated by Room) handles loading cached data from the database into the UI.

Thanks To Mich For ConnectionLiveData.kt class (Customised)

About

A Test App Featuring MVVM ,Hilt , Remote Mediator , Room , Naviagiotn Comp

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages