Skip to content

dtmorgan/android.test.myalbum

Repository files navigation

MyAlbum

MyAlbum is a small demo application based on MVVM architecture pattern and using common Android Application tech-stach. Application uses the library Dagger-Hilt for dependency injection. Fetched data from the network are persisted into a database via repository pattern.

Android Architecture Blueprint

Architecture is strongly inspired from android architecture blueprint based on Hilt for dependency Injection. I advice you to take a look to architectures described in the github repository.

Tech stack & Open-source libraries

  • Minimum SDK level 19
  • Kotlin based, Coroutines
  • Hilt (alpha) for dependency injection.
  • JetPack
    • LiveData - notify domain layer data to views.
    • Lifecycle - dispose of observing data when lifecycle state changes.
    • ViewModel - UI related data holder, lifecycle aware.
    • Room Persistence - construct a database using the abstract layer.
  • Architecture
    • MVVM Architecture (View - DataBinding - ViewModel - Model)
    • Repository pattern
  • Retrofit2 & OkHttp3 - construct the REST APIs and paging network data.
  • Jackson - JSON library
  • Timber - logging.
  • Material-Components - Material design components like cardView.

Architecture

Architecture

Hilt & Alpha version

Hilt is maybe cool however but it's still in alpha version. So it should not be bring in production before it enters in stable release.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages