Supported platforms

Kotlin supports the following platforms and provides target presets for each platform. See how to use a target preset.

Target platform Target preset Comments
Kotlin/JVM jvm
Kotlin/JS js Select the execution environment: - browser {} for applications running in the browser. - nodejs{} for applications running on Node.js. Learn more in Setting up a Kotlin/JS project.
Android applications and libraries android Manually apply an Android Gradle plugin – com.android.application or com.android.library. You can only create one Android target per Gradle subproject.
Android NDK androidNativeArm32, androidNativeArm64 The 64-bit target requires a Linux or macOS host. You can build the 32-bit target on any supported host.
iOS iosArm32, iosArm64, iosX64 Requires a macOS host.
watchOS watchosArm32, watchosArm64, watchosX86
tvOS tvosArm64, tvosX64
macOS macosX64 Requires a macOS host.
Linux linuxArm64, linuxArm32Hfp, linuxMips32, linuxMipsel32, linuxX64 Linux MIPS targets (linuxMips32 and linuxMipsel32) require a Linux host. You can build other Linux targets on any supported host.
Windows mingwX64, mingwX86 Requires a Windows host.
WebAssembly wasm32

A target that is not supported by the current host is ignored during building and therefore not published.