Recommended stacks

The catalog has thousands of libraries. These are the ones worth reaching for first — one or two solid picks per job, so you can assemble a Compose Multiplatform stack in minutes instead of hours.

Curated picks from the Compose Multiplatform Wizard, enriched with live stars from the kpkg catalog.

Build your stack →

Networking

Talk to HTTP APIs from shared code.
Ktor client14.4k

The standard multiplatform HTTP client — engines per target, coroutine-native.

io.ktor:ktor-client-core:3.5.0

Serialization

Turn JSON into typed models.
Kotlinx Serialization

First-party, reflection-free JSON with a compiler plugin.

org.jetbrains.kotlinx:kotlinx-serialization-json:1.11.0

Concurrency

Structured async on every platform.
Kotlinx Coroutines

Coroutines and flows — the backbone of modern Kotlin async.

org.jetbrains.kotlinx:kotlinx-coroutines-core:1.11.0

Date & time

Instants, durations and time zones.
Kotlinx DateTime

Multiplatform date/time modelled on java.time, without the JVM.

org.jetbrains.kotlinx:kotlinx-datetime:0.8.0

Dependency injection

Wire your graph without boilerplate.
Metro1.3k

Compile-time DI with a Gradle plugin — fast, no reflection.

dev.zacsweers.metro:gradle-plugin:1.1.1
Kotlin-Inject1.5k

Annotation-driven, compile-time DI via KSP.

me.tatarka.inject:kotlin-inject-runtime-kmp:0.9.0

Image loading

Fetch, cache and render remote images.
Coil11.8k

The popular Android loader, now Compose Multiplatform.

io.coil-kt.coil3:coil-compose:3.4.0
Sketch2.4k

Feature-rich multiplatform loader with GIF/SVG/video support.

io.github.panpf.sketch4:sketch-compose:4.4.0
Compose ImageLoader482

Lightweight Compose-first image loading.

io.github.qdsfdhvh:image-loader:1.10.0

Logging

Structured logs across targets.
Kermit1.0k

Touchlab's configurable multiplatform logger.

co.touchlab:kermit:2.1.0
Napier996

Simple logger that routes to Logcat / print / console.

io.github.aakira:napier:2.7.1

Database

Typed, queryable local persistence.
SQLDelight

Typesafe SQL with generated Kotlin APIs and multiplatform drivers.

app.cash.sqldelight:gradle-plugin:2.3.2
Room

AndroidX Room, now with KMP support — entities, DAOs, migrations.

androidx.room:gradle-plugin:2.8.4

Key–value storage

Small settings and flags, saved locally.
Multiplatform Settings2.2k

Key-value storage over each platform's native preferences.

com.russhwolf:multiplatform-settings-no-arg:1.3.0

ViewModel & lifecycle

Screen-level state that survives config changes.
Androidx ViewModel

The official ViewModel, shared across platforms.

org.jetbrains.androidx.lifecycle:lifecycle-viewmodel-compose:2.11.0-beta01

Build config

Generate constants and secrets at build time.
BuildKonfig

BuildConfig-style generated constants for KMP.

com.codingfeline.buildkonfig:gradle-plugin:0.15.1
Build Config

Gradle plugin that generates a BuildConfig object.

com.github.gmazzo.buildconfig:gradle-plugin:5.6.5