JetBrains is officially gearing up for new developments in its Kotlin Multiplatform tool next year, after having announced its first stable release a few weeks ago. The company just released its development roadmap for the tool for 2024.
“We’re dedicated to making Compose Multiplatform a framework that allows creating beautiful and performant applications that look the same way on all supported platforms,” Egor Tolstoy, project lead for Kotlin at JetBrains, wrote in a blog post, speaking about the plans for the framework for sharing UIs across platforms.
The company’s main focus for Compose Multiplatform is to release Compose for iOS into beta. Other areas it will be working on include making all Jetpack Compose core APIs and components multiplatform, improving rendering performance on iOS, making scrolling and text editing in Compose for iOS act identically to how it does in native iOS apps, implementing a common API for resource sharing, integrating with iOS and Desktop accessibility APIs, and providing a solution for multiplatform navigation.
It will also be working on improvements for Compose for Web, such as allowing you to port existing code; supporting varying screen sizes, orientations, and densities; supporting input from a mouse, touchscreen, physical keyboard, or onscreen keyboard; and improving performance.
JetBrains will also be making several IDE improvements, including project configuration help, a unified debugging experience, and enhanced support for Compose Multiplatform, with features like live preview for common code and visual debugging tools.
To support developers who want to share code with iOS targets, it will be working on a direct Kotlin-to-Swift export. “It will eliminate the Objective-C bottleneck, allowing for broader Swift language support and more natural exporting of APIs,” Tolstoy wrote.
Other initiatives in that area include improving performance for the Kotlin/Native compilation, improving CocoaPods integration, and adding support for exporting frameworks with SwiftPM.
And finally, it will be working on improving the library ecosystem and continuing to facilitate backward compatibility. In this area the things JetBrains will focus on include improving the klib format to allow library creators to utilize their JVM library building skills, implementing the same code-inlining behavior from the JVM, and providing a tool to confirm your library’s public API hasn’t been changed in an incompatible way.