Skip to content

Latest commit

 

History

History
51 lines (31 loc) · 2.28 KB

README.md

File metadata and controls

51 lines (31 loc) · 2.28 KB

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