8000 GitHub - alexmprog/CryptoCoins: Compose Multiplatform app which shows CryptoMarket prices
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

alexmprog/CryptoCoins

Repository files navigation

CryptoCoins

GitHub Logo

About

Compose Multiplatform app which shows CryptoMarket coin prices.

  • User real CoinGecko api.
  • Clean and Simple Material UI.
  • Use multi-module Gradle architecture.

Built With 🛠

Kotlin - First class and official programming language for Android development.
Kotlin Gradle DSL - Provides an alternative syntax to the traditional Groovy DSL for Gradle build system.
Coroutines - Kotlin Asynchronous or non-blocking programming.
Compose - The modern toolkit for building native Android UI.
Decompose - Kotlin Multiplatform library for breaking down your code into lifecycle-aware business logic components.
Kodein - Useful dependency injection / retrieval container for Kotlin.
Ktor - A type-safe Kotlin Multiplatform HTTP client.
Kotlin Serialization) - A modern JSON library for Kotlin and Java.

Module Graph

%%{
  init: {
    'theme': 'base',
    'themeVariables': {"primaryTextColor":"#F6F8FAff","primaryColor":"#5a4f7c","primaryBorderColor":"#5a4f7c","tertiaryColor":"#40375c","lineColor":"#f5a623","fontSize":"12px"}
  }
}%%

graph TB
  subgraph :common
    :common:utils["utils"]
    :common:logger["logger"]
  end
  subgraph :core
    :core:dispatchers["dispatchers"]
    :core:network["network"]
    :core:ui["ui"]
  end
  subgraph :data
    :data:coins["coins"]
  end
  subgraph :domain
    :domain:coins["coins"]
  end
  subgraph :feature:coin-details
    :feature:coin-details:api["api"]
    :feature:coin-details:impl["impl"]
  end
  subgraph :feature:coin-list
    :feature:coin-list:api["api"]
    :feature:coin-list:impl["impl"]
  end
  subgraph :feature:home
    :feature:home:impl["impl"]
    :feature:home:api["api"]
  end
  :feature:coin-details:api --> :domain:coins
  :feature:home:impl --> :domain:coins
  :feature:home:impl --> :feature:coin-details:api
  :feature:home:impl --> :feature:coin-list:api
  :feature:home:impl --> :feature:home:api
  :data:coins --> :common:utils
  :data:coins --> :core:dispatchers
  :data:coins --> :core:network
  :data:coins --> :domain:coins
  :app --> :common:logger
  :app --> :core:dispatchers
  :app --> :core:network
  :app --> :core:ui
  :app --> :data:coins
  :app --> :domain:coins
  :app --> :feature:coin-details:api
  :app --> :feature:coin-details:impl
  :app --> :feature:coin-list:api
  :app --> :feature:coin-list:impl
  :app --> :feature:home:api
  :app --> :feature:home:impl
  :feature:coin-details:impl --> :common:utils
  :feature:coin-details:impl --> :core:dispatchers
  :feature:coin-details:impl --> :core:ui
  :feature:coin-details:impl --> :domain:coins
  :feature:coin-details:impl --> :feature:coin-details:api
  :feature:coin-list:impl --> :core:ui
  :feature:coin-list:impl --> :domain:coins
  :feature:coin-list:impl --> :feature:coin-list:api
  :domain:coins --> :common:utils
  :feature:home:api --> :domain:coins
  :feature:home:api --> :feature:coin-list:api
  :feature:home:api --> :feature:coin-details:api
  :core:network --> :common:logger
  :core:network --> :common:utils
  :core:ui --> :common:utils
  :feature:coin-list:api --> :domain:coins

classDef kotlin-multiplatform fill:#C792EA,stroke:#fff,stroke-width:2px,color:#fff;
classDef android-application fill:#2C4162,stroke:#fff,stroke-width:2px,color:#fff;
class :feature:coin-details:api kotlin-multiplatform
class :domain:coins kotlin-multiplatform
class :feature:home:impl kotlin-multiplatform
class :feature:coin-list:api kotlin-multiplatform
class :feature:home:api kotlin-multiplatform
class :data:coins kotlin-multiplatform
class :common:utils kotlin-multiplatform
class :core:dispatchers kotlin-multiplatform
class :core:network kotlin-multiplatform
class :app android-application
class :common:logger kotlin-multiplatform
class :core:ui kotlin-multiplatform
class :feature:coin-details:impl kotlin-multiplatform
class :feature:coin-list:impl kotlin-multiplatform

Loading

Architecture

This repository uses recommended Android App architecture. Image of Clean Architecture

About

Compose Multiplatform app which shows CryptoMarket prices

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0