Skip to main content

Cython-based Python bindings for dear imgui

Project description

completion Coverage Status Documentation Status

Builds:

  • Build status (Windows)
  • Build Status (OS X & Linux)

pyimgui

pyimgui is a Cython-based binding for the amazing dear imgui C++ library - a Bloat-free Immediate Mode Graphical User Interface.

Installation

pyimgui is available on PyPI so you can easily install it with pip:

pip install imgui[full]

Above command will install imgui package with additional dependencies for all built-in rendering backend integrations (pygame, cocos2d, etc.). If you don't want to install all additional dependencies you can always use bare pip instal imgui command or select a specific set of extra requirements:

  • for pygame backend use pip install imgui[pygame]
  • for GLFW3 backend use pip install imgui[glfw]
  • for SDL2 backend use pip install imgui[sdl2]
  • for Cocos2d backend use pip install imgui[cocos2d]

Package is distributed in form of built wheels so it does not require compilation on most operating systems. For more details about compatibility with diffferent OSes and Python versions see the Project ditribution section of this documentation page.

Project status

The imgui package provides support for the majority of core ImGui widgets and functionalities. Some low-level API elements and complex widgets (like plots) may be missing. We are working hard to provide 100% feature mapping of the core ImGui library. The completion badge shows up-to-date status of that goal.

Project distribution

This project has working build pipeline on Appveyor and Travis and builds succesfully for all major operating systems with different architectures:

  • Windows (32bit & 64bit)
  • Linux (32bit & 64bit)
  • OS X (universal build)

Right now we are ready to shipping the built wheels for these three systems (even for Linux using manylinux1 wheels). The build pipeline covers multiple Python versions:

  • py27
  • py33
  • py34
  • py35
  • py36

pyimgui provides documentation with multiple visual examples. Thanks to custom Sphinx extensions we are able to render GUI examples off screen directly from docstring snippets. These examples work also as automated functional tests. Documentation is hosted on pyimgui.readthedocs.io.

If none of these wheels work in your environment you can install the imgui package by compiling it directly from sdist distribution using one of following commands:

# will install Cython as extra dependency and compile from Cython sources
pip install imgui[Cython] --no-binary imgui

# will compile from pre-generated C++ sources
pip install imgui --no-binary imgui

Development tips

We have tried hard to make the process of bootstraping this project as simple as possible.

In order to build and install project locally ,ake sure you have created and activated virtual environment using virtualenv or python -m venv (for newer Python releases). Then you can just run:

make build

This command will bootstrap whole environment (pull git submodules, install dev requirements etc.) and build the project. make will automatically install imgui in the development/editable mode. Then you can run some examples found in the doc/examples directory in order to verify if project is working.

For building documentation and running tests you will need some additional requirements from doc/requirements-test.txt.

You can run tests with:

py.test

If you have any problems with building or installing the project just ask us for help by creating GitHub issue.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

imgui-1.0.0a1-cp36-cp36m-manylinux1_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.6m

imgui-1.0.0a1-cp36-cp36m-manylinux1_i686.whl (2.3 MB view details)

Uploaded CPython 3.6m

imgui-1.0.0a1-cp36-cp36m-macosx_10_12_x86_64.whl (996.6 kB view details)

Uploaded CPython 3.6m macOS 10.12+ x86-64

imgui-1.0.0a1-cp35-cp35m-manylinux1_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.5m

imgui-1.0.0a1-cp35-cp35m-manylinux1_i686.whl (2.3 MB view details)

Uploaded CPython 3.5m

imgui-1.0.0a1-cp35-cp35m-macosx_10_12_x86_64.whl (997.3 kB view details)

Uploaded CPython 3.5m macOS 10.12+ x86-64

imgui-1.0.0a1-cp34-cp34m-manylinux1_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.4m

imgui-1.0.0a1-cp34-cp34m-manylinux1_i686.whl (2.3 MB view details)

Uploaded CPython 3.4m

imgui-1.0.0a1-cp34-cp34m-macosx_10_12_x86_64.whl (998.7 kB view details)

Uploaded CPython 3.4m macOS 10.12+ x86-64

imgui-1.0.0a1-cp33-cp33m-macosx_10_12_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.3m macOS 10.12+ x86-64

imgui-1.0.0a1-cp27-cp27mu-manylinux1_x86_64.whl (2.3 MB view details)

Uploaded CPython 2.7mu

imgui-1.0.0a1-cp27-cp27mu-manylinux1_i686.whl (2.2 MB view details)

Uploaded CPython 2.7mu

imgui-1.0.0a1-cp27-cp27m-manylinux1_x86_64.whl (2.3 MB view details)

Uploaded CPython 2.7m

imgui-1.0.0a1-cp27-cp27m-manylinux1_i686.whl (2.2 MB view details)

Uploaded CPython 2.7m

imgui-1.0.0a1-cp27-cp27m-macosx_10_12_x86_64.whl (997.6 kB view details)

Uploaded CPython 2.7m macOS 10.12+ x86-64

File details

Details for the file imgui-1.0.0a1-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for imgui-1.0.0a1-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 64d7e30a67d2c9b3d0cc937374084ac2841603a39a6a0b2125c35f14d547c4ee
MD5 b2ec932a20f26af5e5facd0a6d96ea16
BLAKE2b-256 7968e486547846375031bcebec339d3377500bbbfa384877b4e48e74b3902d87

See more details on using hashes here.

File details

Details for the file imgui-1.0.0a1-cp36-cp36m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for imgui-1.0.0a1-cp36-cp36m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 581a9a71a661ea3127f3433623cc5e05f1f95e1e9ab9d10db0ed0ed241e4e1f0
MD5 2d1cd9825f7c775094f90421d67da591
BLAKE2b-256 d2c618f1503258c2e36f71f603a4ad87caa867658faa9febf3c9b3a8037c6b65

See more details on using hashes here.

File details

Details for the file imgui-1.0.0a1-cp36-cp36m-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for imgui-1.0.0a1-cp36-cp36m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 193d975d21f7fea276d7de9263c9e734c6c36f1b76448f2b58c055afb6857ccc
MD5 f3e392c083d5a6ee0d636162277cf46d
BLAKE2b-256 a6e4a3729b9c1aa3daf09a26b2abc22c3891e6417dc49a16da92d312a37922d5

See more details on using hashes here.

File details

Details for the file imgui-1.0.0a1-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for imgui-1.0.0a1-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 7c18f6bd300f109622a2886e52762f8353e5befebc9460eeb503dee586912fde
MD5 e6748d38a197ce3141286a83404b5f3f
BLAKE2b-256 dd20bd8b5afe95da686dc9171beda82dc1654f6cfd38cc117ebd74e0cdc7ab22

See more details on using hashes here.

File details

Details for the file imgui-1.0.0a1-cp35-cp35m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for imgui-1.0.0a1-cp35-cp35m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 76224bfa180039f78b77d5dd4ccbdd69c9fcb1135b34152abcbb5a7ac915b9e8
MD5 d88af7e44bef570975cd05c59297f961
BLAKE2b-256 530fa842f527f3e1518cf8c941e7f2f8fa19a2c55d45d4f320f9cc3c73c7bd64

See more details on using hashes here.

File details

Details for the file imgui-1.0.0a1-cp35-cp35m-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for imgui-1.0.0a1-cp35-cp35m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 180b1ee55cb06951fff771727cf55702fcb3d1abd377c4bc68d871088e32996c
MD5 6e08fd4331b4ead069aefe8c9d6e39e2
BLAKE2b-256 43e6cff82820607a07891c9be3451ec7f5f0328a6e6270c4b39cea788495b546

See more details on using hashes here.

File details

Details for the file imgui-1.0.0a1-cp34-cp34m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for imgui-1.0.0a1-cp34-cp34m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 20ec0aff2da8af2188563daa0d6ef5062443ef2fc4a571043f91f22414156c66
MD5 f51b315c7d35c3c17630cf22eb6533e5
BLAKE2b-256 608eafeca5b94cb9f513ed9b4866cb21fe67a75a61415d6fe423752c7fd83534

See more details on using hashes here.

File details

Details for the file imgui-1.0.0a1-cp34-cp34m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for imgui-1.0.0a1-cp34-cp34m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 20cbb36ea77059d2573468e0449fc0a8b73a09d31571182dc671dcd15d38dea1
MD5 73bb87943ef4721b875d6c0d73bac6fc
BLAKE2b-256 e0735847079c617a3263213cee453b9e4bfdd6eeb3ab9381dc64aac527ac3cde

See more details on using hashes here.

File details

Details for the file imgui-1.0.0a1-cp34-cp34m-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for imgui-1.0.0a1-cp34-cp34m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 cf5225079b61f66a68b7d8ad3ba99f241ba8281bf8d17e998c2ecb7b3983e066
MD5 53f1a196201d1dac50a6681d3c5778fd
BLAKE2b-256 ee8d4c752a70b801dd722816fdd2e4ab8da28d08ecbcc5938052c3b9af3d9e90

See more details on using hashes here.

File details

Details for the file imgui-1.0.0a1-cp33-cp33m-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for imgui-1.0.0a1-cp33-cp33m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1fb1206b9b55e6116c2640a42b044132b61f89f37081af9821d47e39a7da822e
MD5 a1ec3556b63973df958bcbb8c3e01745
BLAKE2b-256 8a2d49fe4f4065199b3ee78fdce13a8a11cf217a931f58a9f139f9c87d59a822

See more details on using hashes here.

File details

Details for the file imgui-1.0.0a1-cp27-cp27mu-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for imgui-1.0.0a1-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 e0d9d15e47aeea9d362e7d26f8e259c20e5120d02156985fd5ca911477ff068c
MD5 5a9fb6b988fdf1b3163858a961eb8900
BLAKE2b-256 5a11c4c80f7c809ae891ad53e9658da12586cbadbae1cf4e9f9cac2aef7dfe6a

See more details on using hashes here.

File details

Details for the file imgui-1.0.0a1-cp27-cp27mu-manylinux1_i686.whl.

File metadata

File hashes

Hashes for imgui-1.0.0a1-cp27-cp27mu-manylinux1_i686.whl
Algorithm Hash digest
SHA256 3a25edd646428d07fc67fca2fc90f42d96614b8d03dd2119c58b417be5496e65
MD5 aea4f3503f6f6d53c6b7ce74038643a8
BLAKE2b-256 6c6e4422738ee5a3636c8ee1c13fb2e66127c3b10ba3082b77150f1d1a3d5a0c

See more details on using hashes here.

File details

Details for the file imgui-1.0.0a1-cp27-cp27m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for imgui-1.0.0a1-cp27-cp27m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 67c5ac7bb4462409c042ad5663f165c72773ba8b822787ca7ab9acd8ca5e8033
MD5 4bc46e0b87f86fd02a78129f4e7fcebb
BLAKE2b-256 a689258d1cb848bb10c4bf23e3c0c156897382f16bbd6967ad52496d64955a48

See more details on using hashes here.

File details

Details for the file imgui-1.0.0a1-cp27-cp27m-manylinux1_i686.whl.

File metadata

File hashes

Hashes for imgui-1.0.0a1-cp27-cp27m-manylinux1_i686.whl
Algorithm Hash digest
SHA256 370772a139ceb29d65bb40e2383e5a5420259a0f508c9d710b4cccb5f8d0eb41
MD5 be96645a2c7e86ea130806a9174b4fb2
BLAKE2b-256 687fb36cd47cbfdd8f19738bf1ff86c506343bb0735f94e252942dfec32b2040

See more details on using hashes here.

File details

Details for the file imgui-1.0.0a1-cp27-cp27m-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for imgui-1.0.0a1-cp27-cp27m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 346d6a49df4f35a06087d20b6dad230fb7c86461918e5823fc4a3d6d58fc843c
MD5 6b76e568544b48df2426be16b2ac755a
BLAKE2b-256 7579e4022986db7576ec4d3a8e0e88548c542fd1ca502f49a80422f77910432d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page