This project main purpose to show detail of weather bases on US city by openweathermap.org APIs.
openweathermap.org APIs
- http://api.openweathermap.org/geo/1.0/direct?q=London&limit=5&appid={API key}(Geo API)
- https://api.openweathermap.org/data/2.5/weather?lat=44.34&lon=10.99&appid={API key}
- https://api.openweathermap.org/data/2.5/forecast?lat=44.34&lon=10.99&appid={API key}
- Minimum SDK level 21
- Kotlin based + Coroutines for asynchronous.
- Dagger 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.
- Navigation Component - handle everything needed for in-app navigation.
- Architecture
- MVVM Architecture (View- ViewModel - Model)
- Repository pattern
- Retrofit2 & OkHttp3 - construct the REST APIs and fetch data from network.
- mockito-test library



