Bienvenue dans Nucleus 2.4
Nucleus est la couche desktop de production pour Compose Multiplatform — intégration OS native et packaging pour les équipes Kotlin.
Nucleus est la couche desktop de production pour les applications Compose Multiplatform écrites en Kotlin. Compose dessine l'UI ; Nucleus ajoute les décorations de fenêtre natives, l'intégration au système d'exploitation, la signature de code, les installateurs et les pipelines store. Vous configurez tout le build via un seul DSL Gradle, et le runtime s'exécute soit comme une image native GraalVM, soit sur la JVM.
Si vous shippez déjà Android ou KMP, Nucleus est la façon dont la même équipe shippe le desktop — sans seconde stack.
Une app existante à migrer ? Laissez faire un agent IA
Collez un seul prompt dans votre agent de code (Claude Code, Cursor, Codex, …) — il scanne votre app, pose les bonnes questions et la migre vers Nucleus phase par phase avec des checkpoints de vérification. Zéro installation : tout le playbook tient dans une URL. Voir Migrer avec un agent IA.
Fonctionnalités
- Un seul langage pour toutes les plateformes. Partagez votre code Kotlin avec vos apps Android, iOS et web, avec Compose UI par-dessus.
- Fenêtrage natif (Tao). Wayland, multi-touch, stylet, scaffold de fenêtre, TextureView pour les frames GPU externes, et contexte de rendu GPU pour les renderers in-process.
- Deux runtimes, un seul DSL. Exécution en image native GraalVM, ou sur la JVM avec un cache AOT (JDK 25+).
- Plus de 40 modules d'intégration OS. Notifications, system tray, menus dock, dark mode, hotkeys globaux et barre des tâches, chacun ajouté comme dépendance optionnelle.
- 18 formats d'installateur. DMG, PKG, MSI, AppX, DEB, RPM, AppImage, Snap et Flatpak entre autres, avec signature de code, notarisation et auto-update différentiel.
- Design systems natifs. macOS 26, Fluent et Yaru sur Maven Central, plus Jewel et Material dans ce dépôt. Voir toolkits.
Pour construire votre première app, suivez le quickstart.
Quoi de neuf en 2.4
TaoGpuRenderContext. Les renderers GPU in-process allouent sur le device Skia de la scène — pas de second GPU, pas de copie par frame. Voir Contexte de rendu GPU.AwakeMode. Gardez le système éveillé pour les jobs longs sans forcer l'écran allumé. Voir Energy manager.- Scope d'install MSI aligné avec
windows.msi { perMachine }. Voir Packaging Windows. - Gel de l'ABI publique des modules runtime publiés (
explicitApi+ binary-compatibility-validator). - Corrections de resize et de frame-pacing sur Tao macOS, Windows et Linux.
Liste complète : Changelog.
Discutez avec nous
Le canal Nucleus est #nucleus sur le Slack officiel Kotlin. Posez-y vos questions, discutez du
design, signalez des bugs.
Si vous n'êtes pas encore sur le Slack Kotlin, demandez une invitation, puis ouvrez #nucleus.
Et ensuite
- Pourquoi Nucleus — ce que Compose Desktop vanilla laisse ouvert, et ce que Nucleus comble.
- Nucleus vs CMP vanilla — le tableau de décision pour les équipes Kotlin.
- Migrer avec un agent IA — un prompt, zéro installation.
- Migrer depuis JetBrains Compose Desktop — migration drop-in.
- Quickstart — construisez et lancez votre première app de bureau Nucleus.
- Architecture — le modèle en couches derrière le framework.