Share the logic of your iOS and Android apps while keeping the UX native

Kotlin Multiplatform Mobile is in Beta!

Kotlin Multiplatform Mobile has reached Beta!
The technology is on track to becoming Stable and it’s time to start using it now!

Learn more about beta ->

What is Kotlin Multiplatform Mobile (KMM)?

Kotlin Multiplatform Mobile is an SDK for iOS and Android app development. It offers all the combined benefits of creating cross-platform and native apps.

It is trusted in production by many of the world’s leading companies, including Philips, Netflix, Leroy Merlin, and VMWare.

Kotlin Multiplatform Mobile
Multiplatform Mobile survey sharing chart

Single codebase for the application logic

Maintain a single codebase for networking, data storage, analytics, and the other logic of your Android and iOS apps.

Where other technologies abstract away or completely replace platform specific app development, Kotlin Multiplatform is complementary to existing platform specific technologies and is geared towards replacing platform agnostic business logic. It’s a new tool in the toolbox as opposed to replacing the toolbox.

We loved the “shared business, native UI” idea that Kotlin Multiplatform promoted, and it meant that our teams did not have to give up using their preferred toolchains.

Native and cross-platform development benefits

Share code for logic elements that often fall out of sync while keeping the advantages of native programming, including great app performance and full access to the Android and iOS SDKs.

Multiplatform Mobile vs native and other cross-platform mobile solutions
Where other technologies abstract away or completely replace platform specific app development, Kotlin Multiplatform is complementary to existing platform specific technologies and is geared towards replacing platform agnostic business logic. It’s a new tool in the toolbox as opposed to replacing the toolbox.
Kotlin on Android highlights

One language for cross-platform and native apps

There’s no need to introduce any new programming languages to your codebase to make your app cross-platform. Make your existing Android app work on iOS devices without changing much of your existing code.

Kotlin syntax follows the same concepts used for iOS development and is easy for iOS developers to learn.

The advent of Kotlin Multiplatform provided a serious opportunity to not only become faster at implementing new features, but also to get more interaction in the team between Android and iOS developers.

Familiar tooling and ecosystem

Multiplatform Mobile leverages the multiplatform capabilities of Kotlin and provides tooling for cross-platform mobile development in Android Studio.

Multiplatform Mobile app wizard in Android Studio

Don’t miss out on important news!

Subscribe to Modern Mobile, a regular digest by JetBrains and the Kotlin Community with everything you need to know about modern mobile development.

Subscribe to the newsletter
Now, with Kotlin Multiplatform Mobile, the speed of development across the three client platforms is pretty much unmatched. A single engineer is able to do all of the UI implementations, now does all three clients and has re-skinned or otherwise changed the screens in Down Dog in just a few months.
Multiplatform Mobile sample project PeopleInSpace

Easy to get started with sample projects

You can look into the codebases of sample projects such as PeopleInSpace and Codeforces WatchR. The list includes:

  • Samples with SwiftUI and Jetpack Compose
  • Samples with shared code for view models and navigation
  • Applications published to the Google and Apple app stores

Open a sample to see how to implement specific features, and use it as a playground to try new things.

Performance on both Android and iOS in key areas using shared code was drastically improved when compared Kotlin Multiplatform to our previous Shared Javascript approach. On iOS, we had over 25x faster grading performance than using JavascriptCore. On Android, we had an average improvement of 1.5s off of J2V8 initialization time and 5x faster runtime of shared code itself.

Friendly and helpful community

43% of Kotlin Multiplatform Mobile users revealed that the community helped convince them to start using the SDK.

Join Kotlin Slack chanel image
Kotlin Multiplatform diagram

Cross-platform development beyond mobile

With Kotlin Multiplatform, you can create different multiplatform projects for multiple platforms, including web, desktop, and other native platforms.

Kotlin applications will work on different operating systems, such as macOS, Windows, Linux, Android, iOS, watchOS, and others.

Developed by JetBrains and open-source contributors

JetBrains has been making professional software development a more productive and enjoyable experience since 2000. Most JetBrains IDEs and Android Studio, which is supported by Google, are built on the IntelliJ platform.

The Kotlin programming language is developed by JetBrains, supported by Google, and open to all contributors.

Jetbrains, Kotlin, Google, and contributors
Cross-platform mobile development: solutions, trends, and frameworks.
Want to try Multiplatform Mobile?
Get started