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.17.tar.gz (31.6 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.17-pp310-pypy310_pp73-win_amd64.whl (3.8 MB view details)

Uploaded PyPyWindows x86-64

dearcygui-0.0.17-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl (10.7 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ x86-64

dearcygui-0.0.17-cp313-cp313t-win_amd64.whl (4.1 MB view details)

Uploaded CPython 3.13tWindows x86-64

dearcygui-0.0.17-cp313-cp313t-manylinux_2_28_x86_64.whl (11.2 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.28+ x86-64

dearcygui-0.0.17-cp313-cp313t-macosx_11_0_arm64.whl (4.9 MB view details)

Uploaded CPython 3.13tmacOS 11.0+ ARM64

dearcygui-0.0.17-cp313-cp313t-macosx_10_15_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.13tmacOS 10.15+ x86-64

dearcygui-0.0.17-cp313-cp313-win_amd64.whl (3.9 MB view details)

Uploaded CPython 3.13Windows x86-64

dearcygui-0.0.17-cp313-cp313-manylinux_2_28_x86_64.whl (11.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

dearcygui-0.0.17-cp313-cp313-macosx_11_0_arm64.whl (4.7 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dearcygui-0.0.17-cp313-cp313-macosx_10_15_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.13macOS 10.15+ x86-64

dearcygui-0.0.17-cp312-cp312-win_amd64.whl (3.9 MB view details)

Uploaded CPython 3.12Windows x86-64

dearcygui-0.0.17-cp312-cp312-manylinux_2_28_x86_64.whl (11.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

dearcygui-0.0.17-cp312-cp312-macosx_11_0_arm64.whl (4.7 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dearcygui-0.0.17-cp312-cp312-macosx_10_15_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.12macOS 10.15+ x86-64

dearcygui-0.0.17-cp311-cp311-win_amd64.whl (3.9 MB view details)

Uploaded CPython 3.11Windows x86-64

dearcygui-0.0.17-cp311-cp311-manylinux_2_28_x86_64.whl (11.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

dearcygui-0.0.17-cp311-cp311-macosx_11_0_arm64.whl (4.7 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dearcygui-0.0.17-cp311-cp311-macosx_10_15_x86_64.whl (5.2 MB view details)

Uploaded CPython 3.11macOS 10.15+ x86-64

dearcygui-0.0.17-cp310-cp310-win_amd64.whl (3.9 MB view details)

Uploaded CPython 3.10Windows x86-64

dearcygui-0.0.17-cp310-cp310-manylinux_2_28_x86_64.whl (11.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

dearcygui-0.0.17-cp310-cp310-macosx_11_0_arm64.whl (4.7 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

dearcygui-0.0.17-cp310-cp310-macosx_10_15_x86_64.whl (5.1 MB view details)

Uploaded CPython 3.10macOS 10.15+ x86-64

File details

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

File metadata

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

File hashes

Hashes for dearcygui-0.0.17.tar.gz
Algorithm Hash digest
SHA256 f551ff79a179a4c5f07bbff7bddf88336cdaf7b2069ce774a631094cd553c48e
MD5 6d25a8cce27bc21e19d5a1c933c9d77a
BLAKE2b-256 31520756023f19b51431d832c8870be5a163551d3df638cdeb6f06624ad8c93c

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.17-pp310-pypy310_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.17-pp310-pypy310_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 c1f9c8cc9bee5e983699a9544c213665fc24c581ca20106e3b655bfecc4367fa
MD5 0b09162de22b4b4256de504852202417
BLAKE2b-256 09c7620fe71db86ea6a59c585aaf14144f76b4ce5a2c11d4dfeaeef1f1a46495

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.17-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ab3931cb2f59ec299ea0a0ba3a526fad58a676f1d89912a0907c8861058066aa
MD5 2ea1b996157f832e52c0e26f3db22a3e
BLAKE2b-256 be697d8e50a960abcec6ef1bc78a3d86475d4531aed84760dcfdb62e8f223c67

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.17-cp313-cp313t-win_amd64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.17-cp313-cp313t-win_amd64.whl
Algorithm Hash digest
SHA256 5fe6083b04e04dac5bc2fd5644f4bd1a31003bfd41eb6066e5b835f49479689e
MD5 b0ebd5b27534a642ae905ef4a67adcc7
BLAKE2b-256 474ff9388a5856c45394eece6162c8a82a8810720ac9a29f2c27f1441a497a6d

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.17-cp313-cp313t-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.17-cp313-cp313t-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bcb925997d4bc94b61ac1feba0d0b879c937f618692cc10769a23ee1cbb67f5d
MD5 9d350fd4fa0d7d61c13e2dfb10819059
BLAKE2b-256 24fd32cdb02780acd9d856534485027a5ed91f1b17b4641bfe9c6d120af57865

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.17-cp313-cp313t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.17-cp313-cp313t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f098f138077abb6e3ca7bcf5853139d41c699c334ed3287b6a712fe550f361d8
MD5 22f84f30c735c7b355aa2233c3c9438d
BLAKE2b-256 63a8d6d2f25b9f85c53ff37ddf55b453af2d54f93d60b3f4d16ead5ed69140ca

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.17-cp313-cp313t-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.17-cp313-cp313t-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 cfe11c811f92052f05a2fb0895dd8f407dc99de6920e4fa8aad988a555ea1de1
MD5 2aeb1a8b950106db5c9a87e0d83984e5
BLAKE2b-256 96b75286969e332cfe05cfd3df8498abbd06f680e6330827bc9980d493e2d1c2

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for dearcygui-0.0.17-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 d66b744352042b0391a2500a91fa6b087c94177f8a0804fec62ec6b8e67e292b
MD5 102b545a5f7643d20d1cadbff2a81bc8
BLAKE2b-256 fa3f4a91cda0d963233fc64e5d8fa310f6c9bbbaf04776d989ebe8dec6cb4606

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.17-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 574257dea146282362de8cc1b5f7affa2bb1b2e6594ff48fa559b2879ad44714
MD5 3095ac91f81049454f792c4186c6402d
BLAKE2b-256 785fb457a3c0a866e0f328a45c88120ea7e6a876da569263ba513b31c12cdb4d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.17-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7e915e8f29cd99cfe803493d6ab09909fc1f05c72b48fc59553c0992ec37d52b
MD5 cf4a200fc737309fb9216a31c85702a0
BLAKE2b-256 571e6b41b780c2cc12407c4baca3d19da1b17f17dd8ffaeeee4a8ebc2da9f350

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.17-cp313-cp313-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.17-cp313-cp313-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 4c58c3b9af92a97a5f0e3e58d3605656bec48ff4176f71dc4f852a79d8cf7d18
MD5 edb2d259cae72e6350e5bb2e7d8bcbdf
BLAKE2b-256 ae723f990acacf22d639fcc068f6cb240ecce83e7dd089d612adba74f204ca58

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for dearcygui-0.0.17-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 a718f086bd65445cf1e30c629c1a110b10e2f35f00fd905c191d59a1f7c2b0c9
MD5 5535955aa9e89ec177a12e60ed6db4ea
BLAKE2b-256 8fd004b55f7a80423da20aedb838a3b729d560c28501ab7965131babf5cebab9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.17-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 add9c9088c8bf12f15dcfe33c197049e872c4b40e966b13f3357203565faa1fa
MD5 8f151f0e8069d561b2d4cac3647b887c
BLAKE2b-256 0473accc538c92a9a479be8ee368f3bc2719703b46e5cf904b4764137d6f2526

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.17-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 137e7b669ba40b5f81f5a4be9fbd7138b9ced6d2ada0361296bd10595539242f
MD5 20cadfa75f9417e0dda8cd7ce2f953d3
BLAKE2b-256 0f3e2377923f866a0890442f14e488cf143e86c0753e1590f3709e35747e48de

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.17-cp312-cp312-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.17-cp312-cp312-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 42dd933aba9fe948a8719fde3aed74aed814710aaf8eba44f878cb7894ca34ff
MD5 4607269600738321524c7b0e96a51ec2
BLAKE2b-256 6b0fbd9509aa56c3166063fbf75a22c4a1f7975faeb773d9d20ac23ba4e980bf

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for dearcygui-0.0.17-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 a0c53ef6dba5b30931c5ae484bc4adc503e7d8252e140ac4fddc611011e3afe4
MD5 72414a77d04b6ec0a7e38f080ad4041d
BLAKE2b-256 92c60f75d7ada6cb7befd4a046cfbcd0f7370a2c2d9c3ba6b39fa4890c9d1b9f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.17-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 775f4ec0974b9114317a5b233ddcb287ba439e16f3786260ef9365c3ebd273ec
MD5 7520661aa0fe8fec149fc7716bf29ff3
BLAKE2b-256 ee01c3669bf5ffe8b5d3cba031cfead237093cdbb51d9ff294e7c84b8929fd0e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.17-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 723e8006731c46980cbf43c1b9045faafce33c3753a888f92f65c9c1f9b4ed8a
MD5 66cb11eb3fa62c3e60cf7b81fb134b29
BLAKE2b-256 9e86b76cefe3e85ccce22d139a061d7d108fb9923fe4a83a8dd0b24ecea454e5

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.17-cp311-cp311-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.17-cp311-cp311-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 34ade72fbf6c9ce586d59ab192cd70eb68d54d2a66c3a01183032a9b659c05b2
MD5 00edd94c5a78ef5dbacef93f71e4b9d1
BLAKE2b-256 827509254c999f80f7a48f1de7d513fbc5d6c553c78ffff3eee0fd1c54399e71

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for dearcygui-0.0.17-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 b7a8ee7640d520bb58a17f421ee6cf6d8112078a4e9f9436b0869791989c6dc0
MD5 888de7343d148dc0fac438b526afa034
BLAKE2b-256 88cd1614ce469484a68fe5a9a9cc9c07b96a3078f0833a16861d10e30fe93b00

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.17-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 90bc95c2ee81ab35ebe239a5cf39b1ac96b0ae0918ced76adcf456b1cabd961a
MD5 c8586e23b7e523cd0394c60c02aef613
BLAKE2b-256 0dc4a83c67f406cbdb507bd546789c4c8e6335d8b7ee7272d59cfa466a9f14a3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.17-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ec30b180e63fbabf6de66cfe8250fd2942fd4d87e37db6e0855687f71a5fa216
MD5 22f0c98aabf3b28b254a4afa8344bccb
BLAKE2b-256 b5d995eca11034e9eba753f68ae586cc67d0e9cfd8728749d82e9270c10a001a

See more details on using hashes here.

File details

Details for the file dearcygui-0.0.17-cp310-cp310-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for dearcygui-0.0.17-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 af1fdea5aa0d11288a7719a16d083bd0f4ca2e5728d8e644ccdc1838eb323596
MD5 25f96150882ec5d430cd452bcaa817be
BLAKE2b-256 55f12c7f6274156ff34edd7d92acd3c5ef95b6995f88809b301bcb00dfbbaaa6

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