Imagine if your app could not only look, but be native on every desktop platform.
mitsuami is a Rust toolkit for desktop apps. You write the interface once. On a Mac it's made of AppKit controls, on Windows of WinUI 3, on GNOME of GTK and on KDE Plasma of Qt and Kirigami. A button in your app is the system's own button, not a drawing of one.
Pick a desktop. Every screenshot on this page switches with it.
Looking native is not enough.
Plenty of toolkits draw controls that resemble the system's. Then someone right-clicks a text field, presses a shortcut out of habit, turns on a screen reader or updates their OS, and the resemblance ends.
mitsuami draws no controls. It asks each platform for its own, so they behave the way the person using your app expects. They're the same controls that person uses all day.
-
Text fields that work like text fields
Spell check, the right-click menu, dictation and input methods follow the platform. It's a native text field, after all.
-
Screen readers know every control
VoiceOver, Narrator and Orca find a real button, with its name, because it is one.
-
The keyboard does what people expect
Tab order, focus, and shortcuts written the platform's way: ⌘↑ on a Mac, Alt+Up elsewhere, from one definition.
-
Light, dark and the accent colour
They come from the system as the user set them, and change when the user changes them.
-
Right to left, all the way
In Arabic or Hebrew the whole app mirrors, the native controls and the window's own title bar included. Numbers and dates are written the way the user's region writes them.
-
Each release's look
The macOS 15 and 26 screenshots on this page come from the same app. When the system restyles its controls, your app goes along.
At home on four desktops, without looking alike.
mitsuami doesn't make the platforms match. A group of settings is a box on macOS and KDE and a card on GNOME and Windows, because that's how each of them groups settings. Your app follows each one's habits.
-
GNOME
GTK 4 and libadwaita
Header bars, cards and popovers, as GNOME’s own apps have them.
GTK 4.10 and libadwaita 1.4 or newer
-
KDE Plasma
Qt Quick and Kirigami
Breeze, Kirigami’s pages and toolbars, and Plasma’s menus.
Qt 6.5 and Kirigami 6.14 or newer
-
Windows
WinUI 3
Fluent controls, flyouts and command bars, as in Settings and File Explorer.
Windows 10 (1809) or Windows 11
-
macOS
AppKit
Cocoa controls, the menu bar at the top of the screen and sidebars, in whatever look the release has.
macOS 11 or newer
Proper localization support.
mitsuami comes with Project Fluent, the localization system Mozilla built for Firefox. Translators get room for each language's grammar, plurals included, without asking for code changes. Your app opens in the first of the user's languages it has, numbers and dates are written the way their region writes them, and a right-to-left language mirrors the whole window, title bar and all.
The other languages are shown on macOS 26, dark.
Menus where each desktop puts them.
Write your menus once. On a Mac they go in the menu bar at the top of the screen. GNOME and KDE put them behind a menu button in the window, and Windows gives each window a menu bar of its own. Settings, About and Quit move to wherever each desktop keeps them, and the shortcuts and check marks are the system's own.
When only one desktop has the control you want.
Some controls exist on one platform and not the others. Use the real one where it exists and a stand-in elsewhere, from one definition. When a screen needs it, write that part for one platform alone; your app's data stays shared.
Every example, on every desktop.
These are the examples that come with mitsuami, captured on each desktop in light and dark. Open one to see it at full size.
Apps
-
Microsoft StoreComing soon Mac App StoreComing soon AppImage on GitHubComing soon
-
Microsoft StoreComing soon Mac App StoreComing soon AppImage on GitHubComing soon
Controls
Try it on your own desktop.
Two of the examples are also apps of their own, for Windows, macOS and Linux. Install one and see how it feels next to the apps you already use.
-
mitsuami Files
The Files example: a simplified Finder on your own disk, made of your desktop’s own controls.
Microsoft StoreComing soon Mac App StoreComing soon AppImage on GitHubComing soon -
mitsuami Showcase
Every example in one window. Try each control and see how your desktop draws it.
Microsoft StoreComing soon Mac App StoreComing soon AppImage on GitHubComing soon
The rest is on GitHub.
Adding mitsuami to a project, every control and its options, testing your app, and how each control maps to each platform are in the repository. It's free software under the MIT or Apache 2.0 licence, whichever suits you.