imgui_bundle  by pthom

Cross-platform GUI toolkit for C++ and Python

Created 3 years ago
979 stars

Top 37.9% on SourcePulse

GitHubView on GitHub
Project Summary

Project: pthom/imgui_bundle

This project provides a comprehensive, cross-platform toolkit for rapidly developing graphical user interfaces (GUIs) using C++ and Python. It bundles Dear ImGui with numerous extensions and utilities, offering a unified development experience across desktop, mobile, and web platforms. The primary benefit is significantly accelerated GUI development, allowing users to create sophisticated interfaces with minimal code, leveraging pre-built components and automatic Python binding generation.

How It Works

imgui_bundle builds upon the immediate mode GUI paradigm of Dear ImGui, integrating a curated collection of popular ImGui extensions. It offers auto-generated Python bindings for C++ libraries, enabling developers to use the same codebase or logic across both languages. For web deployment, it supports C++ via Emscripten and Python via Pyodide. The project emphasizes ease of use, providing a "starter pack" that simplifies setup and development, abstracting away much of the underlying complexity of GUI frameworks and cross-platform builds.

Quick Start & Requirements

Highlighted Details

  • Extensive Widget Library: Includes Dear ImGui core, plus ImPlot, ImGuizmo, ImGuiColorTextEdit, imgui-node-editor, imgui_md, ImmVision, NanoVG, ImGuiTestEngine, ImFileDialog, portable-file-dialogs, imgui-knobs, imspinner, imgui_toggle, ImCoolBar, imgui-command-palette, and more.
  • Cross-Platform & Web: Supports Windows, Linux, macOS, iOS, Android, and WebAssembly (via Emscripten/Pyodide).
  • Automatic Bindings: Python bindings are auto-generated from the C++ API, ensuring consistency and ease of use.
  • Interactive Demos: Numerous demos and an interactive manual allow users to explore features and copy code directly.
  • ImGui Test Engine Integration: Built-in support for automating and testing GUI applications.

Maintenance & Community

The project appears to be primarily maintained by pthom. While specific community channels (like Discord/Slack) or major corporate sponsorships are not detailed in the provided text, the project is actively developed.

Licensing & Compatibility

  • License: MIT License.
  • Compatibility: The permissive MIT license allows for use in commercial, closed-source projects.

Limitations & Caveats

  • Building from source can be time-consuming (up to 5 minutes) and requires an internet connection.
  • Some bundled libraries (e.g., ImFileDialog) have noted limitations or recommended alternatives (portable-file-dialogs).
  • Pure Python backends (SDL2, SDL3, GLFW) are experimental and may lack some of HelloImGui's advanced features like high-DPI support.
  • The project's reliance on a single primary author may present a bus factor risk.
Health Check
Last Commit

2 days ago

Responsiveness

Inactive

Pull Requests (30d)
2
Issues (30d)
2
Star History
26 stars in the last 30 days

Explore Similar Projects

Starred by Eric Zhu Eric Zhu(Coauthor of AutoGen; Research Scientist at Microsoft Research), Yaowei Zheng Yaowei Zheng(Author of LLaMA-Factory), and
2 more.

UI-TARS-desktop by bytedance

0.5%
19k
GUI agent app for computer control via natural language
Created 9 months ago
Updated 10 hours ago
Feedback? Help us improve.