skillfed

imgui

Cython-based Python bindings for dear imgui

imgui v2.0.0 110.3K downloads/30d#12,476 on PyPI1,541
Permissive license BSD AGING released

What it is and what it does

imgui is a Python wrapper around the dear imgui C++ library, a lightweight immediate-mode GUI toolkit designed for interactive applications, games, and tools. It provides bindings to imgui's core widgets and rendering pipeline, allowing developers to build responsive, frame-based UIs without the overhead of traditional retained-mode GUI frameworks. The package ships as pre-compiled wheels for Windows, macOS, and Linux across multiple Python versions (3.6–3.11), eliminating compilation in most cases.

The library is intended for applications that need fast, iterative UI rendering—particularly games, visualization tools, and real-time editors. It requires a rendering backend (pygame, GLFW3, SDL2, Cocos2d, or pyglet) to display output. The project supports the majority of DearImGui 1.82 functionality, though some low-level APIs and complex widgets remain unmapped. With no runtime dependencies and permissive BSD licensing, it integrates easily into existing projects.

Use it for:

  • Building debug overlays and in-game menus for games or interactive applications.
  • Creating lightweight data visualization and monitoring dashboards with real-time updates.
  • Rapid prototyping of tool UIs for graphics, audio, or scientific applications.
  • Implementing immediate-mode UI for 3D editors or simulation software.
  • Adding configuration and parameter-tuning interfaces to command-line or headless tools.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Python bindings for the dear imgui C++ library, providing an immediate-mode graphical user interface toolkit for building lightweight, interactive GUIs.

Yes, if you need a lightweight, immediate-mode GUI for games, tools, or real-time applications and are willing to pair it with a rendering backend. The pre-built wheels make installation straightforward on common platforms. However, the aging maintenance status (last release 2023-04-19) means you should verify that the feature set and bug fixes meet your needs before committing to a production project. No known security vulnerabilities.

Install

imgui on PyPI

pip

pip install imgui

uv

uv add imgui

poetry

poetry add imgui

Installing imgui

Before you install

Medium install friction due to compiled wheels; pre-built binaries available for major platforms and Python versions (3.6–3.11), but compilation from source may be required in niche environments. Last release was in April 2023; repository remains active but maintenance is aging.

License in practice

BSD license is permissive, allowing commercial and private use with minimal restrictions; no copyleft obligations.

Quickstart

pip install imgui

import imgui
import imgui.core

# In your render loop:
imgui.new_frame()
if imgui.begin_window("Example"):
    imgui.text("Hello, ImGui!")
    imgui.end()
imgui.end_frame()

Requires a rendering backend integration (pygame, GLFW3, SDL2, Cocos2d, or pyglet) to display windows; install with extras like `pip install imgui[pygame]` for a specific backend.

Verify before relying

  • Whether the majority of core DearImGui 1.82 widgets mentioned in the description are fully functional and production-ready.
  • Current state of missing low-level API elements and complex widgets (e.g., plots) and whether they are actively being added.
  • Compatibility and testing status with PyPy implementations beyond the stated support since release 2.0.

Package facts

License BSD (permissive)
Python support not specified
Install friction medium — platform-specific wheel
Runtime dependencies none
Maintenance aging — 1,213 days since the last release
Last repo commit
First released
Downloads 110,264/month — #12,476 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: imgui-2.0.0-cp310-cp310-macosx_10_9_x86_64.whl; imgui-2.0.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; imgui-2.0.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl; imgui-2.0.0-cp310-cp310-musllinux_1_1_i686.whl; imgui-2.0.0-cp310-cp310-musllinux_1_1_x86_64.whl; imgui-2.0.0-cp310-cp310-win32.whl; imgui-2.0.0-cp310-cp310-win_amd64.whl; imgui-2.0.0-cp311-cp311-macosx_10_9_x86_64.whl; imgui-2.0.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; imgui-2.0.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl; imgui-2.0.0-cp311-cp311-musllinux_1_1_i686.whl; imgui-2.0.0-cp311-cp311-musllinux_1_1_x86_64.whl; imgui-2.0.0-cp311-cp311-win32.whl; imgui-2.0.0-cp311-cp311-win_amd64.whl; imgui-2.0.0-cp36-cp36m-macosx_10_9_x86_64.whl; imgui-2.0.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; imgui-2.0.0-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl; imgui-2.0.0-cp36-cp36m-musllinux_1_1_i686.whl; imgui-2.0.0-cp36-cp36m-musllinux_1_1_x86_64.whl; imgui-2.0.0-cp36-cp36m-win32.whl

Intended Audience :: DevelopersLicense :: OSI Approved :: BSD LicenseOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIX :: LinuxProgramming Language :: CythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonTopic :: Games/Entertainment

Tags

immediate mode gui pythondear imgui python bindingslightweight ui toolkitimgui python wrapperinteractive gui librarybloat-free ui frameworkpython gui rendering
gui-toolkitgame-devreal-time-ui

More Games/Entertainment packages