Skip to content

NewikovN/CryptoWatch

Repository files navigation

CryptoWatch

Android app for tracking cryptocurrency prices. Prices, charts, portfolio — all works offline.


Screenshots


What it does

Loads top 100 coins with live prices and 24h change. On the detail screen — interactive price chart with gradient fill, drawn on Compose Canvas without third-party libraries.

Portfolio tracker: enter how many coins you hold, the app calculates current value and shows allocation on a pie chart drawn on Canvas.

Data is cached in Room — the app works offline, showing the last loaded data.


Stack

Kotlin · Jetpack Compose · Ktor · Koin · Room · DataStore · Coroutines · Flow · Coil


Architecture

Follows Clean Architecture and MVVM principles across three modules: data, domain, presentation.

domain — pure Kotlin, no external dependencies: models, repository interfaces, use cases.
data — Ktor for network, Room for local storage, repository implementations.
presentation — Compose screens, ViewModels with StateFlow.

UI reads only from Room via Flow. Network writes to Room. Favorites flag is preserved on every data refresh.


Getting Started

git clone https://github.com/NewikovN/CryptoWatch.git

Open in Android Studio, run on device or emulator (min SDK 26). No API key required.


Data

CoinGecko API — free Demo plan, no key needed.

About

Android app for tracking crypto prices built with Jetpack Compose and Clean Architecture

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages