choose if you are writing Rust (or need immediate-mode GUI compiled to WebAssembly) and want the same per-frame model as Dear ImGui without C++.
egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native
- 30.1k
- Rust
- Apache-2.0
immediate-mode C++ GUI library
Dear ImGui is a minimal-dependency immediate-mode GUI library for C++, typically embedded in game engines and tool applications to render debug/editor UIs.
Same problem, same approach. Swapping one for another is a config change, not a rewrite.
choose if you are writing Rust (or need immediate-mode GUI compiled to WebAssembly) and want the same per-frame model as Dear ImGui without C++.
egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native
Solves the same problem with a different architecture or at a different layer. Expect to rewrite the integration.
choose if you need a polished cross-platform app UI and can build the whole app in Dart; not a small embeddable immediate-mode overlay.
Flutter makes it easy and fast to build beautiful apps for mobile and beyond
choose for native mobile app UI driven from React/JS and don't mind rewiring the app around JS.
A framework for building native applications using React
choose for web-tech hybrid/PWA apps where the UI lives in a browser, not in a C++ renderer.
A powerful cross-platform UI toolkit for building native-quality iOS, Android, and Progressive Web Apps with HTML, CSS, and JavaScript.
choose for .NET/C# XAML desktop/mobile apps instead of grafting C++ ImGui into that stack.
Develop Desktop, Embedded, Mobile and WebAssembly apps with C# and XAML. The future of .NET UI
choose for a Go-native Material UI toolkit; drops C++ but simplifies Go desktop/mobile.
Cross platform GUI toolkit in Go inspired by Material Design
choose for a declarative C++/Rust UI with high-level widgets and integrated styling rather than immediate-mode layout.
Slint is an open-source declarative GUI toolkit to build native user interfaces for Rust, C++, JavaScript, or Python apps.
choose for C#/.NET cross-platform native apps rather than maintaining a custom C++ render-loop UI.
.NET MAUI is the .NET Multi-platform App UI, a framework for building native device applications spanning mobile, tablet, and desktop.
choose for Kotlin Multiplatform UIs with composable retained-mode widgets instead of C++.
Compose Multiplatform, a modern UI framework for Kotlin that makes building performant and beautiful user interfaces easy and enjoyable.
choose for a single C#/XAML codebase targeting web/mobile/desktop with strong platform reach.
Open-source platform for building cross-platform native Mobile, Web, Desktop, and Embedded apps from a single C#/XAML codebase. Work from any IDE/CLI with Hot Reload, Visual Designer, MCPs, and Skills built for modern .NET workflows. 200M+ NuGet downloads.
choose when you need React-like dynamic mobile UI tied to Tencent's ecosystem; otherwise not a general C++ GUI replacement.
Hippy is designed to easily build cross-platform dynamic apps. 👏
choose if you want to render a web frontend in a WebView while keeping C/C++ backend—a different rendering path than ImGui's vertex buffer.
Use any web browser or WebView as GUI, with your preferred language in the backend and modern web technologies in the frontend, all in a lightweight portable library.
choose if your app is Swift and wants a native cross-platform GUI framework rather than calling C++ ImGui.
A cross-platform GUI framework for Swift, built for demanding workloads and developer ergonomics
choose if you are building a mobile UI in Go and need lightweight direct UI; niche vs ImGui's C++ support.
Cross-platform mobile UI framework for Go
These projects were analysed and named imgui among their alternatives. The relationship is not symmetric — how imgui rates them is a separate judgement, made when imgui is analysed in its own right.
calls imgui “choose when your project uses C++ and needs the mature original immediate-mode GUI with its ecosystem, while egui is Rust-only”
egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native
calls imgui “choose when you need a lightweight immediate-mode GUI in C++ with zero dependencies, sacrificing Rust and retained-mode architecture.”
A data-first Rust-native UI design toolkit.