You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
CoinSphere - Cryptocurrency Market Mobile application
CoinSphere is a modern Android mobile app built using Kotlin and Jetpack Compose. It allows users to view real-time cryptocurrency prices, explore detailed coin information, and manage a list of their favorite coins. Designed with a clean UI and powered by reactive architecture, CoinSphere delivers a fast and smooth crypto tracking experience.
Screenshots
SplashScreen
Loading Screen
Market Screen
Search Screen
Settings Screen
Error Screen
Model-View-ViewModel
MVVM is a software architectural pattern that separates the presentation logic (View) from the business logic (Model) and introduces a middle layer (ViewModel) to mediate communication between them. This design pattern promotes better code organization, testability, and maintainability of Android applications.
Core Features
Live Market Data — Displays real-time prices, ranks, and change percentages of popular cryptocurrencies
Search for coins — Search for coins
Coin Details View — See in-depth info about each coin, including price, change, symbol, and image
Favorites — Users can mark coins they want to track closely
Pull-to-Refresh — Easily refresh market data with a swipe
Error/Empty State Handling — UI reacts gracefully to no internet or failed API calls
Dark/Light Mode Support — Follows system theme preferences
Tech Stack
Layer
Tool / Library
Language
Kotlin
UI Toolkit
Jetpack Compose
Architecture
MVVM
DI
Hilt
Networking
Retrofit + OkHttp
Async/Reactive
Coroutines + Flow
Image Loading
Coil
Navigation
Jetpack Compose Navigation
Local Storage
Room (for favorites)
State Handling
StateFlow, ViewModel
API Provider
CoinGecko (public API)
Project Structure
com.coinsphere
│
├── data
│ ├── remote # Retrofit API services and DTOs
│ ├── local # Room database, DAOs, entities
│ └── repository # Repository interface and implementation
│
├── di # Hilt modules for dependency injection
│
├── ui
│ ├── screens
│ │ ├── market # Main screen showing list of coins
│ │ ├── details # Screen for individual coin info
│ │ └── favorites # User's favorite coins
│ └── components # Reusable Composables (e.g., CoinItem, TopBar)
│
├── navigation # Navigation graph and screen routes
│
├── utils # Constants, formatters, and helper functions
│
└── MainActivity.kt # App entry point and NavHost
About
A Crypto Market coins Mobile app that displays Crypto coins with their realtime prices built in Kotlin