Skip to main content

DearCyGui: A simple and customizable Python GUI Toolkit coded in Cython

Project description

DearCyGui: a Multi-platform (Windows, Linux, Mac) GUI library for Python

DearCyGui is an easy to use library to make graphical interfaces in Python.

Main features are:

  • Fast. Speed to create and manage the interface has been one of the main focus.
  • Dynamic interface. It is based on Dear ImGui (https://github.com/ocornut/imgui) to render. Each frame is new, and there is no cost if the content changes a lot a frame to another.
  • Unlike other libraries based on Dear ImGui that provide access to its low-level API, DearCyGui is more high level. As a result your code is easier to read, and less prone to errors. Python is not adapted to call the low-level API as it would quickly become slow (as you would be required to re-render every frame). In DearCyGui you build objects and the backend handles calling the low-level API.
  • Customization. You can create your own widgets or draw elements, and alter how they are rendered.
  • Even more customization, if using Cython. You can cimport DearCyGui and directly access the item internals or create your own drawing functions.
  • Adapted for Object Oriented Programming (All items can be subclassed), though you can use other styles as well.
  • Uses SDL3, and thus has high quality and up-to-date support for DPI handling, etc.
  • MIT Licensed.
  • Low GPU/CPU usage.

Installing

pip install dearcygui to install an old version

Latest development version:

git clone --recurse-submodules https://github.com/DearCyGui/DearCyGui
cd DearCyGui
pip install .

Examples & Documentation

  • Demos Gallery: [https://github.com/DearCyGui/Demos]
  • Documentation: See the docs directory or run documentation.py in the demos

Design Philosophy

DearCyGui bridges the gap between Python's ease of use and Dear ImGui's performance. Rather than making direct Dear ImGui calls each frame from Python (which would be slow), DearCyGui:

  • Uses objects created in Python but managed by compiled C++ code (generated with Cython)
  • C++ code handles the per-frame rendering via Dear ImGui
  • Python code defines the UI structure and handles application logic
  • Cython enables seamless integration between Python and C++

This architecture provides:

  • Fast rendering performance
  • Clean, Pythonic API
  • Full Dear ImGui functionality
  • Extensibility through subclassing

Credits

DearCyGui began as a Cython reimplementation of DearPyGui (https://github.com/hoffstadt/DearPyGui) but has evolved with additional features and a different architecture.

This project uses:

Huge thanks to the Cython team which have enabled this project to see the light of the day.

Portions of this software are copyright © 2024 The FreeType Project (www.freetype.org). All rights reserved.

Project details


Download files

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

Source Distribution

dearcygui-0.0.6.tar.gz (19.9 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

dearcygui-0.0.6-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl (7.8 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ x86-64

dearcygui-0.0.6-cp313-cp313-win_amd64.whl (3.2 MB view details)

Uploaded CPython 3.13Windows x86-64

dearcygui-0.0.6-cp313-cp313-manylinux_2_28_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

dearcygui-0.0.6-cp313-cp313-macosx_11_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dearcygui-0.0.6-cp313-cp313-macosx_10_15_universal2.whl (4.2 MB view details)

Uploaded CPython 3.13macOS 10.15+ universal2 (ARM64, x86-64)

dearcygui-0.0.6-cp312-cp312-win_amd64.whl (3.2 MB view details)

Uploaded CPython 3.12Windows x86-64

dearcygui-0.0.6-cp312-cp312-manylinux_2_28_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

dearcygui-0.0.6-cp312-cp312-macosx_11_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dearcygui-0.0.6-cp312-cp312-macosx_10_15_universal2.whl (4.2 MB view details)

Uploaded CPython 3.12macOS 10.15+ universal2 (ARM64, x86-64)

dearcygui-0.0.6-cp311-cp311-win_amd64.whl (3.2 MB view details)

Uploaded CPython 3.11Windows x86-64

dearcygui-0.0.6-cp311-cp311-manylinux_2_28_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

dearcygui-0.0.6-cp311-cp311-macosx_11_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dearcygui-0.0.6-cp311-cp311-macosx_10_15_universal2.whl (4.2 MB view details)

Uploaded CPython 3.11macOS 10.15+ universal2 (ARM64, x86-64)

dearcygui-0.0.6-cp310-cp310-win_amd64.whl (3.2 MB view details)

Uploaded CPython 3.10Windows x86-64

dearcygui-0.0.6-cp310-cp310-manylinux_2_28_x86_64.whl (8.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

dearcygui-0.0.6-cp310-cp310-macosx_11_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

dearcygui-0.0.6-cp310-cp310-macosx_10_15_universal2.whl (4.2 MB view details)

Uploaded CPython 3.10macOS 10.15+ universal2 (ARM64, x86-64)

File details

Details for the file dearcygui-0.0.6.tar.gz.

File metadata

  • Download URL: dearcygui-0.0.6.tar.gz
  • Upload date:
  • Size: 19.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for dearcygui-0.0.6.tar.gz
Algorithm Hash digest
SHA256 e2467e893cfb082978fac7f89dd174040fc3e002caccf4b5577a5b0a763e9f78
MD5 761e4bdeccbbe5b35a7f6e29f3ca0942
BLAKE2b-256 864c886cbe16a25b9e96c776e2c99f0549caba5a08ccda91a832238d4d78f19d

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.6-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e91c4770520bd4cb98d1fbe1a3f3f5fac5127d0219fd78a3e2f89d0f0baf61ba
MD5 017eb7dc790474f2faa6745668757dc6
BLAKE2b-256 806ce217a52862010e71be15ff52a2be4a0e9c6f7fdfa79d800133c782cb12aa

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: dearcygui-0.0.6-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 3.2 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for dearcygui-0.0.6-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 657e970e573348b22c833d46acb7f5e5244c4afef9d3f2c0242f028214c2536f
MD5 2380c1d0032e0fd7661c7a27c8dee318
BLAKE2b-256 52913ae3315dff79f40f35c31a373ae9ac5b5cd766dcb9f020636b488e5d8af7

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.6-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d6a4c5e1c6c1a111daebfab64be66f04a2771dd5d61b577762b9d55bd1435d94
MD5 7717fc4412658af0947b3351e5b73c44
BLAKE2b-256 b3383b4cf66e8d606221735e644036d68be2947fe94e5b4b90e3fccc45aa859a

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.6-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 56c9dc196ae4a0bbe962e1e48c8ff2af93512a6243ef145e61165ddfbcea2edb
MD5 32b3515ab1ce01eb9cf918fee549edd0
BLAKE2b-256 beff67136eea07819cb89e3f14c99b9bc4fdbc2b8d524afcdb88f936c66e0fc2

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-cp313-cp313-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.6-cp313-cp313-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 937f0233abb30e89e7e9e7c6f943d05915a2c99d01a889af996dadcc0f45cc74
MD5 50c3d8edb71a5ac6646804d1409748f8
BLAKE2b-256 18aa7dd72494564ecebce848fdeb1cd28a8b1feca47a2dfebf3763267d2b0ab4

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: dearcygui-0.0.6-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 3.2 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for dearcygui-0.0.6-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 4d6ae965a6df532534284ea615cba45d23084a2e80733fe56ee496782950f92a
MD5 669c560298fcf770723e8ff66efd8d19
BLAKE2b-256 6c17e39a5e40f64f973902adee412f1458c489817f0ee963d8441c8497772ab0

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.6-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8e88dbfa2416ee45922edc97903f421729cd77068c6be5bdcf088ca342347e3c
MD5 cd5d9cc46062a4066df35e524d245fae
BLAKE2b-256 4d32efc9c5ca9265cea3c051ed81878cdef376f89734026ad0dee380e2ba7354

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.6-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d631f49fb8815dfc8b9d36aa3136c19dd770de36e9d32c29f043a66befee3309
MD5 a96e7ede4da176addcb28684b0a23a3d
BLAKE2b-256 4c4744b11e500f6914b0cff4f12ab57a97e9ebd5586dee5653852de728696846

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-cp312-cp312-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.6-cp312-cp312-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 1820c05abf01bd8ff768ded441bbf65acde60cba0172726829cad275595721ec
MD5 595339b2345ab80f7322fce2b811cb7c
BLAKE2b-256 3ec316f269aab7089ec556cb8cbf7e4734d5c22434d0aaced486431a0677ba62

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: dearcygui-0.0.6-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 3.2 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for dearcygui-0.0.6-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 825b8cf1c864b1a4b206172154ce0a1ca1c3d1beab1b73c017c19aac1c26b87f
MD5 095012899a8d4f8d0fde8481e7c0dbdd
BLAKE2b-256 025100fce76fffa503fee46c32cab39b1c1464de665a7cfafb39c47e8286b879

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.6-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 178d8c1c780d511ac9dc6c2d2780d097fca6dab71096f3a950f32f8341fe8588
MD5 1be0c15b25ba9ca26f470de70f3c4fdb
BLAKE2b-256 9814f6cec40927a0d62264605f4d14dbcedbf5c3609dfb74c0774f9c11500332

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.6-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f84418837ba32e516e6076cb26e68c953a4266a90d8a2575de3d30ed29609b57
MD5 95ac1c6ded5fec2aff6060de698a417a
BLAKE2b-256 5d1e923a47ec4c1b36137e675e8d2b3988b5aeaa02c5efcc67c60d7cab561f3a

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-cp311-cp311-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.6-cp311-cp311-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 458c0a84274d995161b0043398d642772da1fbf4ae88d0b01a223b61ad189850
MD5 0d4c92a969b49c283191a55badd2334d
BLAKE2b-256 31b955d1ee6b5b92884cab0f7e3c084793b9e440af050b9584cea93ebcbb067b

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: dearcygui-0.0.6-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 3.2 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.1

File hashes

Hashes for dearcygui-0.0.6-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 9043106a41af7564ab75dac5934808ca0c69585f1dcde1a2c372e46a62bbd57f
MD5 1466a131788638e4236e6c605f2137de
BLAKE2b-256 e4ee2520cf7add689ea9ee85502cd7c7600769907d8a5c838e30eddf217f9657

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.6-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 758e4e86bfa61e84bf84b9892c30988e22716b0ac4e39ecb89d22b226251d5d2
MD5 c3d63a22481b6058b0da5ecb8c34b23b
BLAKE2b-256 5e6d1648dbba341f0752648bb9eb0b3f278e79745ea8842f852044fe43c562d6

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.6-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 61eac59439699a21dace04211306ebaa0429706191dbcba21212fa9a0432dcac
MD5 99c1fa40fc1402a45706bc0fa8aaa610
BLAKE2b-256 87e677254a307aeff4755b83ec388b00a51afdbbcff1faf7569ef7ca4f720a26

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.6-cp310-cp310-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.6-cp310-cp310-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 bc576531e9d45f93cc9142ef35a5d3a6868ed670e49b5bf06651568440ca92a8
MD5 195d2b0280336c646c63ef16445053a6
BLAKE2b-256 93c761ecd1880ae483f35866df6104e82ddcf3069eab7748c1a2d7f67d8533d6

See more details on using hashes here.

Supported by

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