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.14.tar.gz (31.7 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.14-pp310-pypy310_pp73-win_amd64.whl (4.0 MB view details)

Uploaded PyPyWindows x86-64

dearcygui-0.0.14-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl (10.8 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ x86-64

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

Uploaded CPython 3.13Windows x86-64

dearcygui-0.0.14-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.14-cp313-cp313-macosx_11_0_arm64.whl (4.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.13macOS 10.15+ x86-64

dearcygui-0.0.14-cp312-cp312-win_amd64.whl (4.1 MB view details)

Uploaded CPython 3.12Windows x86-64

dearcygui-0.0.14-cp312-cp312-manylinux_2_28_x86_64.whl (11.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

dearcygui-0.0.14-cp312-cp312-macosx_11_0_arm64.whl (4.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dearcygui-0.0.14-cp312-cp312-macosx_10_15_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.12macOS 10.15+ x86-64

dearcygui-0.0.14-cp311-cp311-win_amd64.whl (4.1 MB view details)

Uploaded CPython 3.11Windows x86-64

dearcygui-0.0.14-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.14-cp311-cp311-macosx_11_0_arm64.whl (4.9 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dearcygui-0.0.14-cp311-cp311-macosx_10_15_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.11macOS 10.15+ x86-64

dearcygui-0.0.14-cp310-cp310-win_amd64.whl (4.1 MB view details)

Uploaded CPython 3.10Windows x86-64

dearcygui-0.0.14-cp310-cp310-manylinux_2_28_x86_64.whl (11.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

dearcygui-0.0.14-cp310-cp310-macosx_11_0_arm64.whl (4.9 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

dearcygui-0.0.14-cp310-cp310-macosx_10_15_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.10macOS 10.15+ x86-64

File details

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

File metadata

  • Download URL: dearcygui-0.0.14.tar.gz
  • Upload date:
  • Size: 31.7 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.14.tar.gz
Algorithm Hash digest
SHA256 680c7bdf09700cc5552dcab5939b1186524374da188ecfde0361c11a60cf3181
MD5 de3b7e3b9e5cfd98ad38dfbcc0f32b4c
BLAKE2b-256 f2028927162f496775ff4597078ad539a056937369199651bfaa06912430ef74

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.14-pp310-pypy310_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 8037dc6c8c2ad7a173b8a20b666a0d633735ebfc0ec731ba50f4dacf614e97d3
MD5 bcf3c63b9d01c8d2fc88727f440dad3d
BLAKE2b-256 94ae76a4b4356e423bce372cb33b2a09478bf749de06d288a93568e1111d3a5c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.14-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 470598804cbb271a559f8e12774822f1684a445527133891d1ca14c416c80629
MD5 c724b8430fba13db2fbfc9e00c72f6db
BLAKE2b-256 1eaa47bb4484e8084ce916b6e8a937b6822e3516eb9c40183d7cbd846e2e56a6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dearcygui-0.0.14-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 4.1 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.14-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 67cfb4d122eb2a884ada2f11f4b4acd10cb81a927ea1e21d528e786dc18e92a8
MD5 a1cf28e7bc060006ebded7e8aa8c3e53
BLAKE2b-256 d5e9c07959acbcd1aa48f7ac5ec3ead660eb9d6400ed52d73b817fc8ad914249

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.14-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 27650796f2f09edd873817cb65607e34d2251ae7770e11e739392f321af9152a
MD5 d486811161780985020449c20d49dd48
BLAKE2b-256 3e1731c41763395daaa26f3f523d8c44d027c5e854a96257fd203a954afbf23a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.14-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b34622a3f753c9027127f067069295d22ab9111daca5d19358a3b6591315a325
MD5 fa320079f66ceb41baa68ff564ee3097
BLAKE2b-256 d598a93c9ad0680f9ccc5f55221a49a09c19152c47734cc3efd65e322be41740

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.14-cp313-cp313-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 ec349650723aeb58be3793eecf0ccfa7881948c2fe89c53d028ea4c8eea84b1c
MD5 e9a20e20f89ff51a4877bb6700b1044f
BLAKE2b-256 9afa9a70180cdeabf4ef27e4228c0f456a800ef58e1ff89a15738f0c6becf1bb

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dearcygui-0.0.14-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 4.1 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.14-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 592345f58e55daed090a158abcff30f7b84c2f878dbc5beabfd6b83f95c2010c
MD5 34ba9c47f9da3d46e221550f8ad0c364
BLAKE2b-256 11300a8a3c8c697652c119bd89ec3b2ebe489b470c73650e55139bac7d292013

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.14-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3b0f9f18ee6045b6152874d6411e23ed857389e581c877eec709a440d480bec3
MD5 856c350664457dd601f34e836938cde7
BLAKE2b-256 0237ad931df99e7d7fb5f07faecaf1cb1ca6500b2203f4bf16a97a26ac5511c2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.14-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 63fc376f44edf9f4781b84afa92d27bd390caa34838a678756c606c257e1e941
MD5 750a706285704143b88408609817a9aa
BLAKE2b-256 12f9c5407b306e68dd213791f4197c9a2804f985d3aa05ae08629003747019cf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.14-cp312-cp312-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 fdb65baaf8629d8adaa50135218daedd0c389fa501817c197fce110e2071acb0
MD5 954d9864d15fa65479a49c9c25c89c95
BLAKE2b-256 95f36037962d7ca50823b0d123376dfa9b9fcf0dda1ada98e369a3b985c2767b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dearcygui-0.0.14-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 4.1 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.14-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 1df47eed36123152ec9585587699cef477628f66914f8fe8eb8617ae24e11d6e
MD5 2ed6fc7a3868ae64bd289294f5a72fd9
BLAKE2b-256 8b59955491f9a7d63adc3e8006648140b91897e7400a00fef5289b5d9a5c6ddc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.14-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c59c0abe5a5c10ffca8c62a9a0eb445c2c6820f43309035bd3a466955aeade63
MD5 1135e762ce967843dbf5512b5337dcd1
BLAKE2b-256 7e375b684d64070103aa6ddae738a06b79f71fa9d990f6b5d97f086c6fe0ab66

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.14-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 495dca29b70bbcc2fc5e8d38c2b694016aaceb7499c301f3f38a6a0ebde8a83a
MD5 5e4b7a64d2d391f672b13ad419d865f7
BLAKE2b-256 bb641acf761884acc5af9adf2b28da38f031e615dcead27d0b305fe771eac802

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.14-cp311-cp311-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 4181d4baa4a666b90f0c5da5d1ac362dd54fb22812428f5cf2f3e68db04b1612
MD5 c0ebbad7101d72343422bb7cca6b90d0
BLAKE2b-256 a8d0edd77d54a7d9689906ec743b6d344ff1ecf20bfbac2adffb47d761d64990

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dearcygui-0.0.14-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 4.1 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.14-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 14ad7beba21a6361bde7d41577f2a0df45c13232514a752c28d0a3f0bc060ad5
MD5 70598ccac27d96e53fddf4bc86fa177b
BLAKE2b-256 abf3b95e4f36d61781553d65861875c3341c058316bc2b46eba2f59b43bbeedc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.14-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c6d2f35684bbe25eae9cbdfb08280388c555cb1c83bf809241cc48d10358a610
MD5 6a9a4bc535f10db1f8f1588591407807
BLAKE2b-256 f7163ae72d29932f25dc3a5def36eed572dace59b04dac6eb8599ff4aca30b44

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.14-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5bca5362a48358cc0663f0213c3247eb5d8eb2680e00cd56847f686ce7586ea3
MD5 de742efd942fa09c9c07218678db5df8
BLAKE2b-256 eaa6f6bd7ffebac66cb1684ab2a84c7a6c22a60cb498f20b16e57c76c04fe24d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.14-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 e226c73ce35d0cc22769c049c7d6bc049b212de977915a312fc94b16bcb78ea5
MD5 da194475e6984d6936f372b160bea353
BLAKE2b-256 365cd094c0b163fa035b8e6880ea0619097a8790ed8ff3e20c2142ee8ae0fde4

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