ImGui Bundle: easily create ImGui applications in Python and C++. Batteries included!
Project description
ImGui Bundle
ImGui Bundle is a bundle for Dear ImGui, including various useful libraries from its ecosystem. It enables to easily create ImGui applications in C++, as well as in Python.
The python bindings were autogenerated from the original C++ code, so that they are easier to keep up to date, and the python API closely matches the C++ api, making it possible to easily port research code from Python to C++.
Request for feedback : ImGui Bundle is a brand-new python and C++ package (Oct 2022). Feedback from users would be appreciated in order to make sure it works on different platforms.
Warning : The API might evolve a bit during the month of November 2022. I'll remove this warning once it is more stable.
Python C++ |
Batteries included
ImGui Bundle include:
- imgui : Immediate Gui library
- hello imgui: multiplatform backend provider for imgui.
- implot: plotting library based on ImGui
- ImGuiColorTextEdit: Colorizing text editor
- imgui-node-editor: Node editor
- imgui-knobs: Knobs for ImGui
- ImFileDialog: File dialogs
- imgui_md: Markdown for ImGui
- imspinner: Spinners
- imgui_toggle: Toggle switch widget
Philosophy
- Closely mirrors the original API of ImGui and other libraries
- Original code documentation is consciously kept inside the python stubs. See for example the documentation for:
- Fully typed bindings, so that code completion works like a charm
ImGui Backend
ImGui Bundle uses Hello ImGui, which is configured to use GLFW + OpenGL3. Under C++, this is configurable (see Hello ImGui docs), with some adaptations inside on the cmake side.
Usage with Python
Install
# Install from pypi
pip install imgui-bundle
# or install from clone
git clone https://github.com/pthom/imgui_bundle.git
cd imgui_bundle
pip install -v .
Demo
# imgui_bundle_demo will run the demo shown below.
# It also acts as a manual for ImGui Bundle with lots of examples and related code source.
imgui_bundle_demo
The source for the demos can be found inside bindings/imgui_bundle/demos.
Usage with C++
git clone https://github.com/pthom/imgui_bundle.git
Then, take inspiration from demos_cpp/demo_haiku_implot_heart, or demos_cpp/demo_widgets_docking
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for imgui_bundle-0.6.6-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b67223487fdecb0c57aee17251ff2d33802f312cbd5e3401f84e4fb10d391985 |
|
MD5 | 0773f0ea80e2e6905d52150969f6d434 |
|
BLAKE2b-256 | 7788cdbc2092e2e2464611cc544857064e3c2cda79db4b18cd83276bdfec8c89 |
Hashes for imgui_bundle-0.6.6-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f1a4393930e236ec97572859ae89f5408674a28d8c81aabf1700d3bf678ba82f |
|
MD5 | 3015427de99016df29d4a4df23964c03 |
|
BLAKE2b-256 | 048589cf76f5b576da86df5917245571f51e7a1ace7dcdb6061cc6e4e7e41364 |
Hashes for imgui_bundle-0.6.6-pp39-pypy39_pp73-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | af072e8c7714184e96ea1eb7b954d1f23bdecc8e686355debf81b3ade817b376 |
|
MD5 | 042d5326a310d1b6e003463f0783ee50 |
|
BLAKE2b-256 | 972b33884341c4f3be71a83c4a62a8611d27493d09ca59cbe1e6d2bd5f08b4c5 |
Hashes for imgui_bundle-0.6.6-pp38-pypy38_pp73-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ea24c3a215f17719d2cecab0852106d54acb2e8bb3eb39a834f6f244e6aec422 |
|
MD5 | e0b618fe5916a40edc72e7a4a4672db1 |
|
BLAKE2b-256 | f0f76d319aa10d3f238ae66abb7a93e21dab66c7ad8445491c4607850e99aab3 |
Hashes for imgui_bundle-0.6.6-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 93f7c68536662712b9655ea7ca75eedf80ac235a1c963f61260a8edcc2403110 |
|
MD5 | 05eb9807be788e36e4e1286a90dad7fa |
|
BLAKE2b-256 | accc70f6644d558fa90c4d286f05a7ed0ab85010fc1c57543e33d61a19dd6a12 |
Hashes for imgui_bundle-0.6.6-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4c9becadfab04cc79ef9e369693527560696d8ca37bb6c04f290dc860b82143e |
|
MD5 | 288056e63928933863d85ffed927153c |
|
BLAKE2b-256 | 52772bee6edd434ee985cc0fc7bfe9231dd37f16aad6a9e02e0f4f84e28a36c5 |
Hashes for imgui_bundle-0.6.6-pp38-pypy38_pp73-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 021ed240e73fde5a5ac1377d90f6b21f8036cbe18f897f667ac50971c4ae1cd7 |
|
MD5 | 9cb71ad4ac8bc8cb88a489089df5fa8d |
|
BLAKE2b-256 | 70804e2bbafe1494cbd8f7c8236a2d2c2a4d92e5b55dc685010e962c62b201dd |
Hashes for imgui_bundle-0.6.6-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3f6fdc0bf1672f60a1d7d3b45cf58e81682f4e118346643fb3b6b437c52417c6 |
|
MD5 | 10b11cc886f650359e6fdef86b6f964f |
|
BLAKE2b-256 | 353342da64762b6c31e2c1344743d2589332b17a9c55b6eff66d15ec7e6fe37f |
Hashes for imgui_bundle-0.6.6-cp311-cp311-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bfd6b7fe84e0f7f0de31fdd42de7dd743269bcff3c03f15e78da4b84c8142c5b |
|
MD5 | 915e39c32a50dee09c4c35d1efd40899 |
|
BLAKE2b-256 | 26eebeb30ff7b69ea7b50c7ff179c2be17747f3931f019031b8e3ea1513d034d |
Hashes for imgui_bundle-0.6.6-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1f5ed09d1abbba6107885393b5e7ee47a137317de485fec427c54e6adf13e594 |
|
MD5 | 758a08f0a32027cbe79961e465217213 |
|
BLAKE2b-256 | 0ed98932556c6627615f7818651eccfbf9ae2a6d1a4c2df5acdcbf680a25933c |
Hashes for imgui_bundle-0.6.6-cp311-cp311-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5622bd32040ccfb8a15a52afd5614ba739035a66f0278e1d00ed8903da5c3f86 |
|
MD5 | 54a35360f3f70a60f405fd5df6d9a1bd |
|
BLAKE2b-256 | 66bac2e7ceedc4f2a303aebe3dc6abd855a35c6a396ad816612a8ed59b40681e |
Hashes for imgui_bundle-0.6.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ea24dceb24e6ce805ba40f6789d38bb14f3f0745fa10af765b5200b6b7b06b48 |
|
MD5 | 1a365c1aa58f7751f7eb70faaf2eacb5 |
|
BLAKE2b-256 | 75b887120cfdfe82a37eb51cf2176d5dc600c5638ed93c7b174670aecad98324 |
Hashes for imgui_bundle-0.6.6-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bd6f50fc019f91d465d0bdc031f54edda0e3d4e843dea4ff75835a719ad83926 |
|
MD5 | f71713abcb1391aee6f1e30637d7b5cf |
|
BLAKE2b-256 | 38b80b8f9c6285e5242315cb49d90562bb5f96f80e0416c736954d350ed50b37 |
Hashes for imgui_bundle-0.6.6-cp311-cp311-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5e207452327c2c6074bdafc5461c1040c0027613a9bdb1d371aab4e030ac3f44 |
|
MD5 | 1004893433ea53a968429a4a10a5cb1f |
|
BLAKE2b-256 | db87dee11c7adb3da64bd0a5751d1ac72a5ce98dfa0333f8773fdeb567c7cf68 |
Hashes for imgui_bundle-0.6.6-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c04b79c674aba8e7ada322d0ef5fcda694d9003bd25853cadee217d71189e277 |
|
MD5 | dc51ba84d75e92a7a4cf1993b1bdb0a3 |
|
BLAKE2b-256 | 23c51350d0106f2e5c3ccb8fa02fd371f61fe7c3222a48c9ec5f7c2d8fcf2c76 |
Hashes for imgui_bundle-0.6.6-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d81f3d93f27b104694aed5634d482f5494258580763d92c77b5881e60af37d64 |
|
MD5 | 745fcc330b8818962fd294f915ca74a3 |
|
BLAKE2b-256 | f2bd0769468dfe79b9acc831f9ea5b60697d012411b05071fcc4046ad1ed3630 |
Hashes for imgui_bundle-0.6.6-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 65062fd6715465744926cabf51dbc892da26db5460312c9abd067097ef2f43e2 |
|
MD5 | 02fc24910cf037daa887308f9e76e620 |
|
BLAKE2b-256 | 2c596af07df47a78fe828f0ffddc0e0f6872e07ef042b7e76568d78e78ae791e |
Hashes for imgui_bundle-0.6.6-cp310-cp310-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d18789935bee4fc4491bfe70776a2e66cfa9c8228db5b4a5d9a47f855c0320e4 |
|
MD5 | 4932fdfca82f846bee1de1c0f8a9babf |
|
BLAKE2b-256 | 544c7f94fd7127cf8d72fbabbcb080fb7b2bfe25cd026aa10a5dfba8dacc69bc |
Hashes for imgui_bundle-0.6.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f3c1c39f2ab98c60bfbf9e344ccb4d00efbf6824967ec97c156869fd38d6263f |
|
MD5 | 1c42cd8333f2b2caf621008539a98ae2 |
|
BLAKE2b-256 | 24c910ef68d82b3bdaaaf5725042ff6c0c82229bb5b87d8746aed0785e7b96e1 |
Hashes for imgui_bundle-0.6.6-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a6570c0cb47f50db39ba83715b49f71ef45a27df9cad95d7bb83635960864097 |
|
MD5 | 83cb8fd6abe6b12c0035b85f6f72d944 |
|
BLAKE2b-256 | 2f25830e0b4eea7b01e0b3ca7bef83ad0ce2b9e33524adae664d73afd40d5714 |
Hashes for imgui_bundle-0.6.6-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ed83973474cda05dec68bd70ea0aac52cb00244d76a70c13ad147151a97ace7a |
|
MD5 | e9409fd1af44325a421fcd4d9f22cd0d |
|
BLAKE2b-256 | c89af5e4eef22eec9939be5eeb9ad768e6213a5cca42b9e483c03f0aa5130548 |
Hashes for imgui_bundle-0.6.6-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e72515745f8a5ac8936281458cd288460cb7873141851498f05493f9fa76ed74 |
|
MD5 | 4d0639f86c4b6349034759641d0e3da6 |
|
BLAKE2b-256 | 1f39f1cde551ddfbd0fc17f4067c92a908023a31874a858865258490b5c9c1e0 |
Hashes for imgui_bundle-0.6.6-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 20c6848beb8760807de2309a7d1cf3c0c149d4420cc03025ee72b9879bea5b33 |
|
MD5 | 5acbe78eb9b754cfd2a35e5a44a7a436 |
|
BLAKE2b-256 | 68c6752563ae45c8c6dbaed152b3a941c4c62c776b008acef35e9f9aacbdb4b8 |
Hashes for imgui_bundle-0.6.6-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 763ca3385e1722e9fa23736e3438ecd4e642cf978ab056bdc86f481281ffb23b |
|
MD5 | ee1da4adeef2a54fe6ecbe9fed71448c |
|
BLAKE2b-256 | 8ab24f8f3bb5be621b19a97763e70845ff22faaa042d3e85f61c553146a2903c |
Hashes for imgui_bundle-0.6.6-cp39-cp39-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eb81fa8cf678a8a9d68682045dfaac634a148418c718ed8a2f26f6afa229989d |
|
MD5 | cdde7704de9a3d0430f4b4cffd865dae |
|
BLAKE2b-256 | a8791fb166684acc70dd93f5d923f8b5e211bf293535561acf9a9f7efbc33fdc |
Hashes for imgui_bundle-0.6.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 66f14f1e46a82e624acefcf0a7e16b5104288c28002dd12c324ae13ee499c9cf |
|
MD5 | 1f3545367ffd9f911bd9bb7177edf4c6 |
|
BLAKE2b-256 | 023094d20b85e06d8f535fdd3131175ffe9694bb505a1963f8523fdf86579998 |
Hashes for imgui_bundle-0.6.6-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9701b42f9bdb88a1ae9cb2be8c7a363f7106d9de5849b5668b96888ea2e3f650 |
|
MD5 | dd17768efc37a88aaeab4df9e8efcf51 |
|
BLAKE2b-256 | b39584b5d5816ba77a1a669980e3f735d74c093bcffdf7cab7e0dbda83e5526e |
Hashes for imgui_bundle-0.6.6-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6da0351c3693528fddc401299f3bb96fd6199bacb82a2a6650ae48525e08b379 |
|
MD5 | 7df15f81c934f73e3b479dcf9e0696a1 |
|
BLAKE2b-256 | 4dd45b40d0ec36e07b12f1d1e5196e7533ac0d06c16fa0ff2a3d9c79347735af |
Hashes for imgui_bundle-0.6.6-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 02f1ffd596e6027d4b2d000902fa279e08b131e49e149d60bba2e6874f682bae |
|
MD5 | 5b1d5f3bc673be1a18d2fb7c9f2ba82b |
|
BLAKE2b-256 | ad2ab8c4f546e042f916f7d0aa327fcea81cddb01ff9cef832bb3549d2fbaeff |
Hashes for imgui_bundle-0.6.6-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0f2fdd02690941e528e2a87a643a2418bac7d21d41b615076ce624c75c997901 |
|
MD5 | 8df16666d506a55a5f9d5c29a18934e6 |
|
BLAKE2b-256 | 1eaa15664a32764d2d0980192cc93814be72b34c3ae0cbfacc4a64bba35740d1 |
Hashes for imgui_bundle-0.6.6-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6492dc587aa7e3dff5265ddd45d08940149985b36b834c39b8b4d27f12b50ff0 |
|
MD5 | 829c432119b9b915b2c0b7dd0a0db6ac |
|
BLAKE2b-256 | 89940bfcb932da8384b38b39e77b2c21a6f75caa48b0339625468a4e0f89faf4 |
Hashes for imgui_bundle-0.6.6-cp38-cp38-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ae9fc8281be2bbc1ad87d51308a72ef6e3ccf1c67d98646be50909b8b3a6aeff |
|
MD5 | 787ef2026d7bde4d64baea0885d63726 |
|
BLAKE2b-256 | f733b4551c4c70a51fe61ffc7a62be4589b8ec7bb4d5433f7087f69fa5112996 |
Hashes for imgui_bundle-0.6.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cfed3c0c485ae0d4b051026c090674cdb038b559a39701b742d4f49d960c4b88 |
|
MD5 | 07f2eceb767f29f4deddb537db42e956 |
|
BLAKE2b-256 | 0cd1f605425988bee40117b5e221da4d363c2ade896e533c14dfecbf73825f7a |
Hashes for imgui_bundle-0.6.6-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ad5add72f3f32f1de39652c187b37be148f0ed3f25679047afa89fffb6dce7a9 |
|
MD5 | 15ac703ef75f8d450240995a732b0309 |
|
BLAKE2b-256 | 14671d73b5a671bdb3f6932938f55ad1ccd918dd056a71b7d9aa6416a0111848 |
Hashes for imgui_bundle-0.6.6-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e7ad24539036866100bab7341c158657b46c0229de4999a1e0b48c7ea2512967 |
|
MD5 | 6229bb01d10b7c8e16f2341115a82c18 |
|
BLAKE2b-256 | a000c1d751589f2ae3281ad98f1fa1ba4543a5ad0770e5e182fe83798c639d59 |