https://github.com/HDCharts/charts
🟢 Charts for Jetpack Compose — Multiplatform (Android · iOS · Web · Desktop)
https://github.com/HDCharts/charts
android android-chart chart charts compose-multiplatform ios jetpack-compose jetpack-compose-charts js jvm kotlin library
Last synced: 2 days ago
JSON representation
🟢 Charts for Jetpack Compose — Multiplatform (Android · iOS · Web · Desktop)
- Host: GitHub
- URL: https://github.com/HDCharts/charts
- Owner: HDCharts
- License: mit
- Created: 2024-01-03T19:32:13.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2026-07-04T12:06:26.000Z (13 days ago)
- Last Synced: 2026-07-04T14:06:11.784Z (13 days ago)
- Topics: android, android-chart, chart, charts, compose-multiplatform, ios, jetpack-compose, jetpack-compose-charts, js, jvm, kotlin, library
- Language: Kotlin
- Homepage: https://charts.harisdautovic.com
- Size: 50.2 MB
- Stars: 446
- Watchers: 3
- Forks: 23
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- kmp-awesome - charts - Charts for Compose Multiplatform (Libraries / 🍎 Compose UI)
README
A Kotlin Multiplatform chart library built with Jetpack Compose.
---
## 📚 Documentation
https://charts.harisdautovic.com/
## 🟢 Production Demo
https://charts.harisdautovic.com/demo
## ✨ Snapshot Demo
https://charts.harisdautovic.com/demo/snapshot/
## 🏀 Playground
https://charts.harisdautovic.com/playground
## Get Started
```kotlin
dependencyResolutionManagement {
repositories {
mavenCentral()
}
}
```
### All Charts
Use the umbrella artifact when you want all chart types with the simplest setup.
```kotlin
commonMain.dependencies {
implementation("io.github.dautovicharis:charts:")
}
```
### Independent Charts
Use independent modules when you want only specific chart types and smaller dependency footprint.
```kotlin
commonMain.dependencies {
implementation("io.github.dautovicharis:charts-line:")
implementation("io.github.dautovicharis:charts-pie:")
implementation("io.github.dautovicharis:charts-bar:")
implementation("io.github.dautovicharis:charts-histogram:")
implementation("io.github.dautovicharis:charts-stacked-bar:")
implementation("io.github.dautovicharis:charts-stacked-area:")
implementation("io.github.dautovicharis:charts-radar:")
// Optional: add charts-core directly only if you need shared base APIs
implementation("io.github.dautovicharis:charts-core:")
}
```
### BOM
Use BOM for version alignment where Gradle platforms are supported.
For KMP `commonMain`, keep explicit versions as shown above.
```kotlin
dependencies {
implementation(platform("io.github.dautovicharis:charts-bom:"))
implementation("io.github.dautovicharis:charts-line")
implementation("io.github.dautovicharis:charts-pie")
implementation("io.github.dautovicharis:charts-bar")
implementation("io.github.dautovicharis:charts-histogram")
implementation("io.github.dautovicharis:charts-stacked-bar")
implementation("io.github.dautovicharis:charts-stacked-area")
implementation("io.github.dautovicharis:charts-radar")
}
```
## Example
```kotlin
@Composable
fun BasicLineChart() {
val values = listOf(42f, 38f, 45f, 51f, 47f, 54f, 49f)
val labels = listOf("Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun")
val dataSet = values.toChartDataSet(
title = "Daily Support Tickets",
labels = labels,
)
LineChart(dataSet)
}
```
## Contributing
See [CONTRIBUTING.md](CONTRIBUTING.md) for contribution guidelines.
## License
[MIT](LICENSE)