Project Description

This repository contains a sample app that implements MVVM architecture using Kotlin, ViewModel, LiveData, and etc.

MVVM Architecture is one of the most popular and latest architecture to develop a maintanable and managable codebase. We are developing a sample Weater Forecast Android App with MVVM Architecture using Kotlin language and Retrofit network calling library.

The app has following packages:

  1. data: It contains all the data accessing and manipulating components.
  2. ui: View classes along with their corresponding ViewModel.
  3. utils: Utility classes.

Open Weather API

We will use Open Weather Map API for collecting weather information.

Run the project

  • Clone the project and open it using Android Studio.
  • Sync the Gradle and run the project. Install APK on your emulator or real device. Turn on the internet of your testing device.

Check list

  1. Programming language: Kotlin (DONE)
  2. Design app’s architecture MVVM (DONE)
  3. Apply LiveData mechanism (DONE)
  4. UI should be looks like in attachment (DONE)
  5. Write UnitTests (DONE)
  6. Acceptance Tests (NOT YET)
  7. Exception handling (DONE)
  8. Caching handling (DONE)
  9. Secure Android (DONE)
  10. Accessibility for Disability Supports (DONE)

GitHub

View Github