Skip to content

A simple Clean Archi MVVM Weather sample app providing Paris weather

Notifications You must be signed in to change notification settings

thecyril/WeatherApp

Repository files navigation

WeatherApp Kotlin Clean Architecture (MVVM)

Overview

This Repository contains a Detailed Weather Sample app that Implements MVVM clean Architecture in Kotlin using Retrofit2, Koin, RxKotlin, Lottie, AndroidX, Android Jetpack, RxBinding

Preview

Preview

The app has following packages

  • App.kt its include Dependencies Injections Modules using Koin

  • model its include the data payload from the repository, the formatted use case model

  • utils Caintains utils classes and specialy a Mapper class used to map images to a data

  • view View Classes Fragments/Activities/Adapters

  • view_model ViewModels Classes that provide data to View

  • interfaces Contains all the necessary interfaces

  • core Contains the Api and repositories classes, and also some specific translation class like Translator

MVVM (Model View ViewModel Reperesentation) Flow

  • View

    • Subscribe to data from viewModel

    • Observe viewmodel Publish State for response

  • ViewModel

    • Having all Publisher of Models

    • Call getWeather() from Repository

    • Send requested param to repository

  • Repository

    • Get RequestData as Param from ViewModel (still in progress)

    • Fetch data from DB/Api

    • Fetch data as Observable that is observed by viewmodel

Used librairies

Releases

No releases published

Packages

No packages published

Languages