Interactive Python & C++ apps for desktop, mobile, and web - powered by Dear ImGui.
Stop fighting GUI frameworks. Start building.
Dear ImGui Bundle is a framework built on top of Dear ImGui, for both C++ and Python. It comes with batteries included: plotting, Markdown, node editors, image inspection, and more.
What for?
- Real-time tools: live data, instruments, simulations, scientific viewers, dashboards.
- Science, education and teaching: interactive lessons that open from a link, on a computer or a phone. For example, Grokking, a narrated lesson where a small neural network memorizes, then suddenly generalizes; or the logistic map, a very simple equation that leads to chaos.
- Playful sketches with sliders: creative coding and math toys, shared with friends through a link.
The same code everywhere: on the desktop, in the browser and on phones. In the browser, no server is needed: a static page is enough.
Made for AI assistants: given llms.txt, an AI can write an app with the bundle, run it, and check it with screenshots and the test engine, even in a chat's sandbox.
In the wild: projects that use the bundle include Newton and Isaac Lab (robotics simulation), Genesis (physics for robotics, 30k stars), the Gaussian splatting viewer of Inria's GRAPHDECO lab, splatviz, Meta's Nymeria, and fastplotlib. More on the home page.
Install: pip install imgui-bundle, then from imgui_bundle import imgui.
Not to be confused with pyimgui (pip install imgui, then import imgui): another Python binding of Dear ImGui, with another API.
See it in action:
No install needed!
- Launch the Interactive Explorer: a full demonstration: showcases all libraries with browsable C++ and Python source. Acts as a living reference manual.
- Open the Playground: a live python sandbox with ready to use demos, based on pyodide. Edit code, see results instantly.
- Cross-platform: Windows, macOS, Linux, iOS, Android, and WebAssembly.
- C++ and Python: APIs with very similar structure.
- Integrated ecosystem:
- Dear ImGui (core widgets)
- ImPlot / ImPlot3D (2D and 3D plotting)
- ImmVision (image inspection)
- RichMd (Markdown documents: math, diagrams, a search; a 40 s video)
- ImAnim (animations), and your Matplotlib figures inside the GUI (
imgui_fig) - imgui-node-editor, ImGuizmo, file dialogs, knobs, spinners, toggles, command palette, a terminal, and more.
- Optional high-level runners:
- Hello ImGui: window, backend, docking, and assets management.
- ImmApp: easy activation of add-ons (ImPlot, Markdown, etc.).
- Web-ready:
- C++ via Emscripten
- Python via Pyodide (online playground and deployable HTML templates)
- Touch screens: on a phone, a swipe scrolls, a pinch scales the app, and a keyboard button appears next to a text field.
- Jupyter: the notebook stays usable while your app runs (
immapp.nb.start()). - Themes: 17 themes, tweaked live.
- Power save: an idle app lowers its frame rate.
- Tests and automation: ImGui Test Engine drives your GUI from a script, for tests, demos or screenshots (it has its own license).
The documentation is available here, with the API reference of every library. All the resources (the docs, the interactive manuals, the videos, the community) are listed in one page.
For AI assistants: llms.txt, a guide to write apps with the bundle, and to run and check them.
Join the Discord server for questions, showcase, and discussion (new!).
FAQ: answers to common questions, in the FAQ issues.
DeepWiki is an AI based doc where you can ask questions about Dear ImGui Bundle and get answers. It is trained on the full documentation and the source code of the Dear ImGui Bundle. Expect some inconsistencies, but it is still helpful.
The project: more than 40 releases since 2022, each new Dear ImGui version followed within days. One maintainer, with contributions from about twenty people. The CI covers 10 platforms and backends:
| OpenGL renderer | Python bindings | Alternative renderers | Mobile |
|---|---|---|---|




