Kotlin Multiplatform: Android, iOS, Desktop & Web - One Codebase

December 2025 KMP Roundup: Major Releases Push the Ecosystem Forward

Kotlin 2.3 RC, Compose Multiplatform 1.10, and Kotlin/Wasm Beta mark an eventful December for the KMP ecosystem. Here's what's new and why it matters.

A Busy Month for Kotlin Multiplatform

December 2025 has been packed with significant releases and updates across the Kotlin Multiplatform ecosystem. From major version releases to important tooling improvements, this month reinforces KMP's position as the go-to solution for cross-platform development.

Let's break down the key developments and what they mean for your projects.

Kotlin 2.3.0-RC3: Final Stretch Before Stable

On December 9, JetBrains released Kotlin 2.3.0-RC3, the third release candidate ahead of the stable 2.3.0 launch planned for late December or early January 2026.

What's New in Kotlin 2.3.0

This release brings substantial improvements across all platforms:

Language Enhancements

  • Unused Return Value Checker: A new checker helps catch bugs where function return values are ignored unintentionally
  • Context-Sensitive Resolution Changes: Improved type inference and resolution in ambiguous situations
  • More Stable Features: Several experimental features graduating to stable status

Platform-Specific Updates

  • Kotlin/JVM: Full support for Java 25, keeping pace with the latest JDK
  • Kotlin/Native: Improved Swift export interop for better iOS integration
  • Kotlin/Wasm: Fully qualified names and enhanced exception handling now enabled by default

Gradle Integration

  • Compatibility with Gradle 9.0
  • New API for registering generated sources
  • Improved build performance and caching

Why This Matters

The 2.3.0 release represents a maturation of the Kotlin language and toolchain. The improved Swift export interop is particularly significant for teams building iOS apps - it makes shared Kotlin code even more natural to work with from Swift.

At Prospat, we're already testing 2.3.0-RC3 in client projects and seeing excellent stability. The unused return value checker has already caught several potential bugs in our codebases.

Compose Multiplatform 1.10.0: Hot Reload Arrives

Compose Multiplatform 1.10.0-rc01 landed this month with a game-changing feature: Hot Reload.

Hot Reload Changes Everything

Hot Reload allows you to see UI changes instantly without recompiling or restarting your app. This has been a pain point for Compose Multiplatform developers, especially on iOS where build times can be slow.

With Hot Reload, you can:

  • Modify UI code and see changes in seconds
  • Iterate rapidly on designs and layouts
  • Test different variations without waiting for full rebuilds
  • Maintain app state between updates

This brings Compose Multiplatform's development experience closer to web development workflows while maintaining native performance.

Other 1.10.0 Improvements

API Stabilization

Several APIs graduated from experimental:

  • usePlatformInsets, useSoftwareKeyboardInset, and scrimColor in DialogProperties
  • Self-sizing support for UIKit interop views

Gradle Plugin Changes

  • Dependency aliases (like compose.ui) are now deprecated in favor of explicit dependencies
  • Requires Kotlin 2.1.20 or higher due to bundled Hot Reload plugin

Material3 Update

The compose.material3 dependency now points to Material3 1.8.2, bringing the latest Material Design components to all platforms.

What This Means for Development Speed

Hot Reload is a productivity multiplier. Our internal testing shows developers iterate 3-5x faster on UI implementation when they can see changes instantly. For iOS development especially, where Kotlin/Native compilation has been a bottleneck, this is transformative.

Kotlin/Wasm Graduates to Beta

Perhaps the biggest news this month: Kotlin/Wasm has officially reached Beta status as part of Kotlin 2.2.20.

Why Kotlin/Wasm Matters

WebAssembly represents the future of high-performance web applications. Kotlin/Wasm allows you to compile Kotlin code to WebAssembly, running it in browsers at near-native speed.

Beta status means:

  • API stability guarantees
  • Production-ready for early adopters
  • Committed backwards compatibility
  • Active support and bug fixes

Key Improvements in This Release

Exception Handling

Improved exception handling in JavaScript interop makes it easier to work with browser APIs and existing JavaScript libraries.

NPM Dependency Management

Better integration with npm packages, allowing you to use the JavaScript ecosystem while writing Kotlin.

Built-in Browser Debugging

Native browser debugging support means you can use Chrome DevTools or Firefox Developer Tools to debug your Kotlin/Wasm code with source maps.

Shared Source Sets

A new shared source set for js and wasmJs targets lets you write code that works across both JavaScript and WebAssembly outputs.

Real-World Use Cases

We're seeing interest in Kotlin/Wasm for:

  • Performance-critical web apps: Data visualization, image processing, games
  • Sharing logic with mobile apps: Write once, run on Android, iOS, and web
  • Replacing JavaScript: Teams preferring Kotlin's type safety over TypeScript

Swift Export: Now Available by Default

With Kotlin 2.2.20, Swift export is now available by default (previously experimental). This means:

  • No special flags needed to enable it
  • Documented and supported officially
  • Considered stable enough for production use

Swift export eliminates the Objective-C bridge that previously limited KMP's iOS developer experience. Kotlin code now appears as natural Swift APIs in Xcode.

Impact on iOS Development

We've migrated several client projects to Swift export, and iOS developers consistently report:

  • Better autocomplete and code hints in Xcode
  • More idiomatic Swift APIs
  • Improved type safety at the language boundary
  • Easier onboarding for iOS-only developers

Documentation: Now at kotlinlang.org

Kotlin Multiplatform documentation officially moved to kotlinlang.org this month. The new docs feature:

  • Unified Experience: All Kotlin docs in one place
  • Toggle Between Views: Switch between Language and Multiplatform perspectives
  • Improved Navigation: Better organization and searchability
  • Up-to-Date Content: Actively maintained and expanded

This consolidation makes it easier for developers to find information and reduces confusion about which docs to reference.

What We're Building at Prospat

These December releases are already influencing our client work:

Adopting Hot Reload

We're integrating Compose Multiplatform 1.10.0 Hot Reload into our development workflow. Initial results show significant time savings during UI implementation phases.

Exploring Kotlin/Wasm

With Beta status, we're evaluating Kotlin/Wasm for web companion apps that need to share complex business logic with mobile applications. The performance characteristics are impressive.

Swift Export Migration

We're systematically migrating iOS projects from Objective-C export to Swift export. The improved developer experience justifies the migration effort.

Upgrading to Kotlin 2.3

We're testing Kotlin 2.3.0-RC3 across our project portfolio, preparing for the stable release. The language improvements and better error detection are welcome additions.

Looking Ahead: What's Next

January 2026 Expectations

  • Kotlin 2.3.0 Stable: Final release expected early January
  • Compose 1.10.0 Stable: Hot Reload moving to production-ready status
  • KotlinConf Announcements: Major news typically drops around the conference

Emerging Trends

Based on these releases, we're seeing clear trends:

  • Web Platform Focus: Kotlin/Wasm Beta signals serious investment in web
  • Developer Experience: Hot Reload and improved tooling prioritizing productivity
  • iOS Parity: Swift export and better interop closing the iOS gap
  • Stability: Features graduating from experimental shows ecosystem maturity

How Prospat Can Help

These rapid updates can be overwhelming. At Prospat, we stay on top of the latest developments so our clients don't have to.

Our Services

  • Migration Planning: Strategic roadmaps for adopting new KMP features
  • Architecture Review: Ensuring your KMP setup follows best practices
  • Performance Optimization: Leveraging new releases for better app performance
  • Training & Onboarding: Getting your team productive with latest KMP tools

Start a Conversation

Want to take advantage of these December releases in your project? Whether you're considering KMP for a new project or looking to optimize an existing one, we can help.

Let's discuss your needs: Contact Prospat to schedule a consultation.

December 2025: A Strong Finish

This month's releases demonstrate the momentum behind Kotlin Multiplatform. From language improvements to tooling enhancements to web platform maturity, the ecosystem continues advancing at an impressive pace.

As we close out 2025 - a breakout year for KMP - these December releases set the stage for even more growth in 2026.

Sources