Multiplatform

Kotlin Multiplatform

Kotlin Multiplatform (KMP) lets you write shared business logic once and deploy it to Android, iOS, web, and desktop.

What You Share

  • Business logic and domain models
  • Data classes and validation
  • API clients and networking
  • Algorithms and utilities

expect / actual

KMP uses expect/actual declarations for platform-specific implementations.

// Common code
expect fun platformName(): String

// Android actual
actual fun platformName(): String = "Android"

// iOS actual  
actual fun platformName(): String = "iOS"

Targets

Android
iOS
Web (JS)
Desktop
Server
WebAssembly