Nucleus

Welcome to Nucleus 2.0

The Kotlin framework for cross-platform native desktop apps — now with a Tao backend, GraalVM native images, 16 packaging formats and four native toolkits.

The Kotlin framework for cross-platform native desktop apps. One Gradle DSL, one language, every screen — and the OS underneath stays fully accessible.

Nucleus turns Compose Multiplatform into a real desktop framework: native window decorations, system integration, code signing, store-ready installers, and a runtime that picks between a GraalVM binary (50 ms cold start) and a tuned JVM (peak throughput). 2.0 ships the Tao backend (Rust-based windowing, Wayland-native, multi-touch, pen) and rounds out the toolkit story with macOS, Fluent, Yaru and Jewel skins.

TL;DR

  • One language, every screen. Share Kotlin with your Android, iOS and web apps. Compose UI on top.
  • Tao backend (new in 2.0). Native Rust windowing — Wayland, multi-touch, pen, ~60 MB RAM on a GraalVM hello world.
  • Two runtimes, one DSL. GraalVM Native Image for instant boot, or JVM + AOT cache for peak throughput.
  • 30+ OS integration modules. Notifications, system tray, dock menus, dark mode, hotkeys, taskbar — opt-in, à la carte.
  • 16 packaging formats, signed and notarized. DMG, PKG, MSI, AppX, DEB, RPM, AppImage, Snap, Flatpak — store-ready.

Try it in 60 seconds

curl -fsSL https://nucleusframework.dev/install.sh | bash
curl -fsSL https://nucleusframework.dev/install-linux.sh | bash

Grab the installer from GitHub Releases.

Or build your first app from scratch with the quickstart.

What's new in 2.0

  • Tao backend. Replace AWT with Rust-driven native windows. See Backends.
  • GraalVM Native Image, productized. Reachability metadata for every Nucleus module is shipped and resolved automatically.
  • Four native toolkits. macOS 26 (Liquid Glass), Fluent, Yaru, Jewel — same DecoratedWindow, restyled.
  • 16 packaging formats. Including AppX/MSIX, Flatpak and Snap with store-publishing wired in.
  • AOT cache (JDK 25+). A pre-warmed JVM start path for apps that prefer peak throughput.

Where to go next

  • Why Nucleus — the Kotlin desktop story, and how it compares to Tauri/Electron.
  • Quickstart — ship a running Tao window in five minutes.
  • Architecture — the layered model that makes all of this composable.
  • Runtimes — GraalVM Native Image vs JVM + AOT cache.