What is Morphic?
Morphic is a Flutter Desktop runtime for building real multi-window applications in pure Dart. It lets one Flutter application create and orchestrate multiple native desktop windows — without writing Win32 or platform-specific windowing code.
It is not a UI kit, widget library, or design system, and has nothing to do with neumorphism. Your Flutter widgets stay exactly as they are — Morphic is the runtime that hosts them across many windows.
What developers ask first.
Is Morphic a UI or widget library?
No. Morphic does not replace Flutter's widget system — you keep building your UI with Flutter widgets exactly as you do today. Morphic adds a desktop runtime above Flutter that manages multiple native windows, orchestration, lifecycle, and cross-window communication.
Why not desktop_multi_window?
desktop_multi_window opens extra windows, and you wire the messaging, z-order, and lifecycle yourself. Morphic is a desktop runtime rather than a window-spawning utility: it provides window orchestration, AppBus messaging, surface lifecycles, reusable workspace patterns, and an upgrade path to the Spatial Runtime.
Why not window_manager?
window_manager controls your app's single main window — size, position, fullscreen, title bar. Morphic is about many windows: creating, orchestrating, and coordinating multiple native windows as one coherent application.
Why not Electron or Tauri?
Electron and Tauri build desktop apps with a web frontend (HTML/CSS/JS, or a system webview plus Rust). Morphic is native Flutter — one language (Dart), Flutter's own rendering, no web layer. It's for teams already building in Flutter who need real multi-window desktop apps.
Does Morphic require Win32 or platform-specific code?
No. You create and manage windows entirely from Dart; the platform-specific implementation is handled internally by Morphic.
Is Morphic only for Windows?
Today Morphic targets Flutter Desktop on Windows. macOS and Linux are planned as the runtime evolves — the layered design exists so the upper layers carry over.
When should I use Morphic?
When you're building professional desktop software that needs more than one window: IDEs, design and engineering tools, creative apps, dashboard workspaces, trading platforms, data-analysis tools, and multi-monitor productivity apps.
A layered runtime.
Each layer has one job and a clean contract to the next — so the platform shell can grow (macOS, Linux, a GPU compositor) without rewriting the layers above.
- 01Semantic
The source of truth — what surfaces (windows) exist and how they relate.
- 02Interaction
Drag, group, dock and extract gestures, resolved deterministically.
- 03Presentation
Keeps semantic truth and on-screen windows coherent.
- 04Projection
Projects geometry and z-order onto real OS windows.
- 05Native
The platform shell — Win32 today; macOS and Linux next.
Read the full documentation or browse the source on GitHub.
Build your first multi-window app.
The Notes Workspace example is a real app — three native windows from one Flutter codebase — you can clone and run in a minute.