Welcome to the Dear ImGui wiki! Feel free to edit and contribute!
New to Dear ImGui? Check out the [[Getting Started guide|Getting-Started]].
2024-07: Wiki editing is unfortunately disabled because it is the only way for this wiki to be indexed by search engines. I have submitted a suggestion to GitHub to workaround this problem: #133123. Please consider upvoting to help. GitHub is preventing search engines from indexing editable wikis. There are third-party crawlable mirrors (e.g. https://github-wiki-see.page/m/ocornut/imgui/wiki) but Google is doing a poor job surfacing the information. DuckDuckGo or Bing may occasionally do a better job, and the GitHub search bar exists. If you have meaningful Wiki edits to make you can checkout the Wiki git repo, make a change and submit it as a PR in main repo. We may need to move the Wiki elsewhere since GitHub is not cooperating by not allowing project owners to even e.g. add wiki editors.)
Index
General
General documentation
Community
Demo, Examples
- About Examples apps (docs/EXAMPLES.md)
- The examples/ folder contains 23 standalone example applications for varieties of platforms and frameworks.
- The imgui_demo.cpp file has a
ImGui::ShowDemoWindow()
function which you can call from any imgui-enabled application to showcase variety of features. The demo function is called from all examples/ apps.
- Third-party: @pthom's imgui_manual: web version of imgui_demo with interactive browsing of sources.
Language Bindings
Platform and Rendering Backends
Third-Party Extensions
- [[List of useful third-party extensions/widgets|Useful-Extensions]]: Text editors, node editors, plotting/graphing, curves/animations/gradients editors, file dialogs, knobs, spinners, toggles, layout, remoting, 3d gizmos, inspectors, and many more!

Testing / Automation

Notable branches
Return to Index
Features
Debug Tools
- See [[Debug Tools|Debug-Tools]] wiki page explaining
ShowMetricsWindow()
, ShowDebugLogWindow()
, ShowIdStackToolWindow()
, Item Picker..
- See [[Error Handling|Error-Handling]] wiki page about ways to configure error handling and state recovery.
Rendering Textures / Images
- Article: [Image Loading and Displaying Examples|Image-Loading-and-Displaying-Examples].
Fonts / Text
Tables
Multi-Select
- [[About Multi-Select|Multi-Select]]
Docking
Multi-viewports
- [[About Multi-Viewports|Multi-Viewports]]
- Search in Issues: multi-viewports
- #1542 Main Multi-viewports topic
- #2117 Linux/Mac compatibility of multi-viewports
Inputs
- Search in Issues: inputs
- 1.87 new IO event queue API #4921
Input / IO queue for very low framerate applications: gist
Return to Index
Miscellaneous
Building / Packaging Cruft
Third-party Frameworks, Templates, Starter Packs
(Please also check our examples/ folder in the repo, they work fine as starter apps!)
C/C++
C/C++, Python:
- imgui_bundle: bundle including various powerful libraries [...] easily create ImGui applications in C++ and Python, under Windows, macOS, and Linux github/pthom/imgui_bundle (2022-2024)
Other:
Notable forks
Ports, Rewrites, Clones
Related/Suggested Libraries
Job Board
See https://github.com/ocornut/imgui/issues/5031 for industry job offers relating to use of Dear ImGui.
Return to Index
Articles, Videos
Articles/Videos About Dear ImGui
English
- 2016-07: Using imgui with STL types blog _[note that this article is now outdated: BeginCombo() api makes it natural to enumerate from any containers, InputText() supports resizing callbacks and imgui_stdlib.h provides wrapper for std::string]_
- 2016-10: CppCon 2016: Nicolas Guillemot “Dear imgui,": video.
- 2017-03: Why I think Immediate Mode GUI is way to go for GameDev tools: post.
- 2018-04: TheChernoProject: ImGui in OpenGL / ImGui Game Engine series / ImGui Events / Docking & Viewport
- 2018-08: Mana Engine: Thread safety of APIs medium/tloch34
- 2018-10: C++ DirectX 11 Engine Tutorial 35/36: Set up ImGui: Part 35, Part 36
- 2019-01: Could ImGUI be the future of GUIs? games.greggman.com
- 2019-03: Rust: Making a basic game ui with imgui and ggez blog
- 2019-05: Frictionless Debug UI In C++: pdf
- 2019-06: An introduction to the Dear ImGui library: blog.
- 2019-08: Integrating Dear ImGui in a custom Vulkan renderer blog
- 2020-02: Runtime Compiled C++ Dear ImGui and DX11 Tutorial: blog.
- 2020-03: C++ Weekly - Ep 210: Getting Started With SFML & Dear ImGui youtube
- 2020-03: C++ desktop application with Dear Imgui: blog
- 2020-06: A Preface to the Dear ImGUI C++ Library: blog
- 2020-09: A Vulkan + Dear ImGui Sandbox: blog
- 2021-01: Gamefromscratch: Dear ImGui C++ GUI Framework For AAA Games and Game Engines youtube
- 2021-02: Introduction to the Dear ImGui C++ Library with Conan: video, blog
- 2021-04: Thinking in Immediate: video
- 2021-05: ImGui-SFML: Using CMake and managing dependencies: blog
- 2021-05: ImGui + GLFW Tutorial: video
- 2022-02: BEST WAY to make Desktop Applications in C++: video
- 2022-04: Make your own GUI apps in C++ (with Dear ImGui and Vulkan) video
- 2022-05: Dear ImGui in Unreal Engine 5 with C++ video + followup
- 2023-02: Dear ImGui for Unity - easiest GUI menus and bars video
- 2023-07: Custom title bars (Make Beautiful Desktop Applications in C++) video
- 2023-08: Dear IMGUI in C# .NET! Tutorial video
- 2023-09: Leveraging Dear ImGui in Unreal: blog
- 2023-09: Visual node graph with ImGui: blog
- 2024-09: Debug BETTER with ImGui in Godot 4: video
- 2024-11: Dear ImGui: Build a c++ debugger and editor | Jack Chen | NZGDC 2024: video
- 2025-03: Odin SDL3 GPU Tutorial: Dear ImGui, Tuning stuff with Debug UI: video
- 2025-04: C++: Rendering An OpenGL Framebuffer Into A Dear ImGui Window: blog
Korean
Japanese
Chinese (Trad)
French
- 2020-11: Dear ImGui : une bibliothèque d'interface utilisateur graphique "bloat-free" pour C++ cpp.developpez.com
German
- 2023-04: Interaktive GUI mit C++ und ImGui: Praktische Beispiele udemy.com/course
Portuguese
- 2022-05: Como Criar Interfaces Gráficas com Dear ImGui e SFML video
Polish
About the IMGUI paradigm
Dear ImGui is one possible implementation of an idea generally described as the IMGUI (Immediate Mode GUI) paradigm. The Immediate Mode GUI paradigm may at first appear unusual to some users. This is mainly because "Retained Mode" GUIs have been so widespread and predominant. The following links can give you a better understanding about how Immediate Mode GUIs works.
- [[Our Wiki page About the IMGUI paradigm|About-the-IMGUI-paradigm]].
- Johannes 'johno' Norneby's article, 2007.
- A presentation by Rickard Gustafsson and Johannes Algelind, 2011.
- Jari Komppa's tutorial on building an IMGUI library, @jarikomppa, 2006.
- Casey Muratori's original video that popularized the concept, 2005.
- Sean Barrett's article in Game Developer Magazine (Page 34), September 2005.
- Sean Barrett's IMGUI page and toolkit, @nothings, 2005.
- Nicolas Guillemot's CppCon'16 flash-talk about Dear ImGui, 2016.
- Thierry Excoffier's ZMV (Zero Memory Widget), 2004.
Another notable uses of IMGUI paradigm include Unity's own IMGUI widget library, often informally referred to as OnGUI()
, which powers the Unity editor and its extensions. This library is unrelated from Dear ImGui. The IMGUI library used by Unity has in the past received mixed feedback from its users, presumably because it may have been perceived as a potential candidate for game-facing UI solutions, which it doesn't excel at. However Unity has since provided separate libraries to tackle that case, and their IMGUI library is still very much in use for the Unity Editor and has been its UI backbone for the past 15+ years.
Return to Index