Skip to content

cherrydaniel/BitcoinTracker

Repository files navigation

BitcoinTracker

An Android application that fetches the current Bitcoin exchange rate using a network call to the Blockchain API and displays it in an appropriate graph of market price over time.

Architecture

The application is built upon the MVVM architecture and according to Google's app architecture guidelines and SOLID principles. Each layer of the application holds a reference to one layer below it and contacts the layer above it using a callback. See diagram:

Application Architecture Diagram

The repository layer and the layers below it are an asynchronous environment, so the components communicate using RxJava Singles that are subscribed on the IO scheduler and observed on the Android Main Thread scheduler. Once the data reaches the ViewModel layer, it is converted to LiveData, because LiveData is lifecycle-aware and will provide the data to the View on the UI thread, only if it's in the foreground.

Dependency graph diagram:

Dependency Graph Diagram

Technologies used

About

An Android application that fetches the current Bitcoin exchange rate using a network call to the Blockchain API and displays it in an appropriate graph of market price over time

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages