Charts
🟢 Charts for Jetpack Compose — Multiplatform (Android · iOS · Web · Desktop)
Install / Use
/learn @HDCharts/ChartsREADME
📚 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
dependencyResolutionManagement {
repositories {
mavenCentral()
}
}
All Charts
Use the umbrella artifact when you want all chart types with the simplest setup.
commonMain.dependencies {
implementation("io.github.dautovicharis:charts:<version>")
}
Independent Charts
Use independent modules when you want only specific chart types and smaller dependency footprint.
commonMain.dependencies {
implementation("io.github.dautovicharis:charts-line:<version>")
implementation("io.github.dautovicharis:charts-pie:<version>")
implementation("io.github.dautovicharis:charts-bar:<version>")
implementation("io.github.dautovicharis:charts-histogram:<version>")
implementation("io.github.dautovicharis:charts-stacked-bar:<version>")
implementation("io.github.dautovicharis:charts-stacked-area:<version>")
implementation("io.github.dautovicharis:charts-radar:<version>")
// Optional: add charts-core directly only if you need shared base APIs
implementation("io.github.dautovicharis:charts-core:<version>")
}
BOM
Use BOM for version alignment where Gradle platforms are supported.
For KMP commonMain, keep explicit versions as shown above.
dependencies {
implementation(platform("io.github.dautovicharis:charts-bom:<version>"))
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
@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)
}
<p align="center">
<img src="docs/content/snapshot/wiki/assets/line_default.gif" alt="Basic line chart example" width="400" />
</p>
Contributing
See CONTRIBUTING.md for contribution guidelines.
License
Related Skills
node-connect
339.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
83.8kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
339.1kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
83.8kCommit, push, and open a PR
