Skip to content

zmwas/BitcoinChart

Repository files navigation

BitCoinChart

An app that displays the price of bitcoin and allows you to filter by timespan and rolling average.

Language:

  • Kotlin

Libraries used:

  • RxJava2, RxAndroid for handling streams of data and multithreading

  • Android architecture components (Viewmodel)

  • MPAndroidChart to display the graph

  • Mockito to mock dependencies

  • Junit to run unit tests

  • Dagger2 for dependency injection

Architecture:

Clean Architecture with a data, domain and presentation layer. Each layer has it's own gradle module. On the domain and data layer we only have a Single returned. On the presentation is where we have subscription to the single hence creating a unidirectional flow within the reactive architecture. Data is only consumed by the presentation layer, data is fetched on the data layer and if there are business rules they will be handled by usecases in the domain layer.

On the presentation layer MVVM is used to separate concerns and enable testing of implementation details in the view model

image

image

image

image

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published