Dear ImGui: Bloat-free Graphical User interface with minimal dependencies

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • imgui

    Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies

  • From the faq https://github.com/ocornut/imgui/blob/master/docs/FAQ.md#q-w...

    Q. What is this library called?

    This library is called Dear ImGui. Please refer to it as Dear ImGui (not ImGui, not IMGUI).

    (The library misleadingly started its life in 2014 as "ImGui" due to the fact that I didn't give it a proper name when I released 1.0, and had no particular expectation that it would take off. However, the term IMGUI (immediate-mode graphical user interface) was coined before and is being used in variety of other situations e.g. Unity uses it own implementation of the IMGUI paradigm. To reduce the ambiguity without affecting existing code bases, I have decided in December 2015 a fully qualified name "Dear ImGui" for this library.

  • dpg-examples

    A collection of example scripts which demonstrate various features/functionality in DearPyGui

  • I've used Dear PyGui [1], which is based on this, and it has been a mixed bag. It's fast and basic functionality is super simple. The documentation is somewhat lacking when you wanted to start doing something non-standard. I would still rate it quite highly all things considered.

    [1] https://github.com/hoffstadt/DearPyGui

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • ImHex

    🔍 A Hex Editor for Reverse Engineers, Programmers and people who value their retinas when working at 3 AM.

  • ImGui is brilliant. I can highly recommend this hex editor built using it: https://github.com/WerWolv/ImHex

  • Libraries

    The Squared C# Library Collection (by sq)

  • My personal IMGUI library [1] is what I call "partially retained" in that there is an immediate mode API similar to dear imgui or nuklear on top, but under the hood the immediate mode API just manages retained mode object graphs for you automatically.

    This is a fantastic (imo) way to build user interfaces, because sometimes the most convenient way to manage state or construct a complex widget is to write a retained mode object that hosts some other child objects, and in other circumstances it's most convenient to write a modal dialog or something by just slamming out some imgui code in a standalone function.

    I also think the imgui approach to layout (use an algorithm that can fully reconstruct your layout from scratch every frame without much of a performance penalty) removes a lot of potential bugs and quirks that are common in UI, like one-frame glitches or having to manually propagate state through a bunch of objects and layers. Though imgui approaches have their own downsides, like the "page tearing" issue. I've had to do some weird contortions to solve that one in my own code and I still get bugs occasionally.

    1: https://github.com/sq/Libraries/tree/master/Squared/PRGUI

  • EmissionControl2

    EmissionControl2 (EC2) is a standalone interactive real-time application for granular synthesis and sound file granulation. It is available for OSX, Linux, and Windows.

  • In school, another student and I used ImGui for a music sampler. In retrospect it could have a more friendly interface heh.

    https://github.com/EmissionControl2/EmissionControl2

  • imgui_test_engine

    Dear ImGui Automation Engine & Test Suite

  • Good Testing/Automation is never free lunch AFAIK but Dear ImGui has a testing/automation system: https://github.com/ocornut/imgui_test_engine

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts