Skip to content

Example of Android app using Navigation Component, Retrofit, Coroutines, LiveData, Koin, Databinding and the MVVM pattern

Notifications You must be signed in to change notification settings

xyarim/android-architecture

Repository files navigation

Android MVVM architecture

Example of Android app using Navigation Component, Retrofit, Coroutines, LiveData, Koin, Databinding and the MVVM pattern

Getting Started

Clone the repository:

git clone https://github.com/xyarim/android-architecture.git

Libraries

Android Jetpack

  • DataBinding Declaratively bind observable data to UI elements.

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

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

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

  • NavigationComponent Android Jetpack's Navigation component helps you implement navigation, from simple button clicks to more complex patterns, such as app bars and the navigation drawer.

HTTP

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

  • OkHttp An HTTP+HTTP/2 client for Android and Java applications.

Coroutines

  • 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.

DI

  • Koin A pragmatic lightweight dependency injection framework for Kotlin developers.

UI

  • Avatar View Avatar ImageView with user's name first letter Drawable placeholder

TODO

  • Implement Repository pattern

Authors

About

Example of Android app using Navigation Component, Retrofit, Coroutines, LiveData, Koin, Databinding and the MVVM pattern

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages