oudaykhaled / CurrencyExchange

Currency Exchanger - Sample App following MVVM and Clean Architecuture

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Currency Exchanger - Sample App following MVVM and Clean Architecuture

Currency Exchanger is a sample application that help its users to easly convert from currency to another one. This is project is made in MVVMi patterns and follows the Clean Architecture Book written by Robert Martin.

asciicast

Overall Architecture

1- View (Activities, Fragments, Views ...): Manage the UI according to its ViewModel 2- ViewModel: Connect Views to one or more use cases. 3- Model: Data transmitted accross all architectre components 4- Usecases: hold the business rules 5- Repository: Manage Data sources

Tech

1-  Kotlin
2-  ViewModel with Live Data.
3-  Coroutines
4-  Dagger 2
5-  RxJava/RxKotlin
6-  Retrofit
7-  JUnit
8-  Espresso
9-  Mochito

Unit Testing

alt text

Code Coverage

https://app.codacy.com/manual/oudaykhaled/CurrencyExchange/dashboard

alt text alt text

About

Currency Exchanger - Sample App following MVVM and Clean Architecuture


Languages

Language:Kotlin 70.4%Language:Java 20.4%Language:PureBasic 9.2%