Czechia-based developer tools company JetBrains is making progress with its open-source UI framework, Jetpack Compose for Desktop.
JetBrains is the designer behind Kotlin, the Google-endorsed programming language for Android app development that’s compatible with Java.
The company has been working on Jetpack Compose for Desktop, a UI framework for Kotlin apps helps developers build slick user interfaces (UI) for apps.
It launched the open-source project off the back of Google’s Jetpack Compose, a UI toolkit that builds on Android Jetpack, which itself is a set of software libraries for Android app development done in Kotlin.
As Google describes it, Jetpack Compose combines application programming interfaces (APIs), Kotlin, and a reactive programming model.
Google released the alpha version of Jetpack Compose in August but first took the wraps off Jetpack at its 2018 I/O conference and has been working on improvements ever since via new libraries. Jetpack is used by more than 80% of the top 1,000 Android apps.
Jetpack Compose for Desktop aims to extend the promise of Jetpack beyond Android to macOS, Linux, and Windows. The software helps developers build UIs in Kotlin and run them on these desktop platforms.
As with Kotlin, a key feature is interoperability with Java, in this case Oracle’s Swing UI toolkit for Java.
JetBrains’ Android-to-desktop development program is still in its early stages, but it promises to help developers exploit Oracle’s Swing to “mix Compose elements with regular Swing elements and gradually migrate their existing applications to Compose for Desktop”.
It also introduces early support for Apple’s M1 chip that lets apps built with Compose for Desktop run on new Apple hardware with “native speed”.
Other additions include the support for Gradle versions 6.6 and 6.7, improved interoperability with JavaFX, and simplified reuse of icon assets between platforms.
“We at JetBrains felt that design decisions made in Android Jetpack Compose by Google including the UI-as-code approach would make it a successful UI library even beyond Android space,” says Nikolay Igotti, JetBrains development team lead.
“And we build a lot of desktop products ourselves, many of them in Kotlin and on the JVM platform, so having a modern UI library for the Kotlin/JVM platform is important for us.”
The company wanted to have a UI library for both Kotlin and the Java Virtual Machine (JVM) platform to support its ambitions to be an important language for desktop development as well as mobile. Jetpack Compose was inspired by Google’s Flutter UI app development framework and React.
JetBrains has bundled Jetpack Compose for Desktop to version 2020.3 of its IntelliJ IDEA, the latest version of its popular integrated development environment.