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.8.tar.gz (20.4 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.8-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl (8.4 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ x86-64

dearcygui-0.0.8-cp313-cp313-win_amd64.whl (3.5 MB view details)

Uploaded CPython 3.13Windows x86-64

dearcygui-0.0.8-cp313-cp313-manylinux_2_28_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

dearcygui-0.0.8-cp313-cp313-macosx_11_0_arm64.whl (3.2 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dearcygui-0.0.8-cp313-cp313-macosx_10_15_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.13macOS 10.15+ x86-64

dearcygui-0.0.8-cp312-cp312-win_amd64.whl (3.5 MB view details)

Uploaded CPython 3.12Windows x86-64

dearcygui-0.0.8-cp312-cp312-manylinux_2_28_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

dearcygui-0.0.8-cp312-cp312-macosx_11_0_arm64.whl (3.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dearcygui-0.0.8-cp312-cp312-macosx_10_15_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.12macOS 10.15+ x86-64

dearcygui-0.0.8-cp311-cp311-win_amd64.whl (3.5 MB view details)

Uploaded CPython 3.11Windows x86-64

dearcygui-0.0.8-cp311-cp311-manylinux_2_28_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

dearcygui-0.0.8-cp311-cp311-macosx_11_0_arm64.whl (3.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dearcygui-0.0.8-cp311-cp311-macosx_10_15_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.11macOS 10.15+ x86-64

dearcygui-0.0.8-cp310-cp310-win_amd64.whl (3.5 MB view details)

Uploaded CPython 3.10Windows x86-64

dearcygui-0.0.8-cp310-cp310-manylinux_2_28_x86_64.whl (8.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

dearcygui-0.0.8-cp310-cp310-macosx_11_0_arm64.whl (3.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

dearcygui-0.0.8-cp310-cp310-macosx_10_15_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.10macOS 10.15+ x86-64

File details

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

File metadata

  • Download URL: dearcygui-0.0.8.tar.gz
  • Upload date:
  • Size: 20.4 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.8.tar.gz
Algorithm Hash digest
SHA256 a188601fecc9572a8c6427138f9b82ae750f44c1e918f885ccd07ed374895ee1
MD5 811ae048b7b646c4b4f0e1895c86711c
BLAKE2b-256 5c240a189e09198b7875cd467d12aaae8cdcb14e816f8fb952c8fb20d5f6b191

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.8-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6c3ac8cce841ae12e330dc327b0e0ee48b57e9df0e43dc483cb23f6d265f3b8f
MD5 bf4d10a868f6876f62256deaadbd57dc
BLAKE2b-256 8ed876788160774cfbeb1f2c2ee7885ba66c64112f63036cde7e37f05b927060

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dearcygui-0.0.8-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 3.5 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.8-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 f46c637f1e568a4384a351aded96f6b0a5b5f47798c68e8d5c1b898080a4aacd
MD5 84f61833e99fb030f3950c2e5f93cc87
BLAKE2b-256 7a341ba331bbf9c5ffbf89ee45efe6489a2f50d694be6331185d77acba2920ce

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.8-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d6557dc76a2ea8082af918befbc446979e3f624d65302f0ea90753ebdc37b65b
MD5 d9e47d991c64eef5e125468d78fdf403
BLAKE2b-256 0d3f35df0d7f0400881c9b7ceb6650918feec714ef7943fbe470f71da107b936

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.8-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9c589583b4eede4bbb7d8d3c5253fc8edd5623c743883cfc68d603b5e20c5f19
MD5 029ed0bcf4f8008a3c588cfe079e4c77
BLAKE2b-256 31cde0963f5c0031b7f3da19b4733efc113494c57104ea7f461c6600bf63689a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.8-cp313-cp313-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 d0eb4be73d0673154129d18dc46bc2effc819cae648f0bb4c321adbf94433311
MD5 9a483995dba15e1b5007deab5fb0d9e5
BLAKE2b-256 d60fef9b35892df50727c0ba4c7987e946755d1e1a9962806deba2bc5598a171

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dearcygui-0.0.8-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 3.5 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.8-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 5b3c6b83f69b6608d277a0b936db8fa8c328c66e23c93485e6e3d89072f16a3f
MD5 9184c1d9601a8610d879d056792bc254
BLAKE2b-256 e8e3cf4854b794bc6303a067d26eb67f23d2aae44de199c8a02665b88cbaebcc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.8-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0be369e0dbcaba9060f14331ec1a2bffa60d47694148eb55ccf0db85135ef219
MD5 92383234f3345d81861b7eb20e435510
BLAKE2b-256 e30991c47c4433d3b7254577876b20eadc7af0b0af1df2948b1338c7973b3157

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.8-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7b266b7341b700e16e34647e47ba8ab4d93ea5ddff690bb794539adf17d1c499
MD5 010dcc2157e03421eee87c23ad873211
BLAKE2b-256 a1c2506afb167d5e47e6c83f8ab44d150841c48296921517cb58d94432de9f5d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.8-cp312-cp312-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 4442353dbb87ee82ec1f287c59eea6caf3293ab7b9cb576b833cf3e644198ad8
MD5 a0380abf35834675a18466ee7e8a7f14
BLAKE2b-256 fb7b25049f82739870a794c6d774199f31dd20e3147f3940d42b7a2a6088d7b4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dearcygui-0.0.8-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 3.5 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.8-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 3a120ae68c5cc37e612d1a46b9ebcd587b07154575807782c03f800427b193bc
MD5 a63714aabba38d65cc420beea3dbe031
BLAKE2b-256 75e560cb577c25205228a0e3710cc4e3f2089c8734e9cdd7e9a56fdcafbf88d7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.8-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e2f6a312a154118f97035d88e94ebb07ad2f4b8f1d9c744d2dc751338a7da3d1
MD5 fbe18f6596a545134ce0b9b3088ea888
BLAKE2b-256 39977947a01730bce7f0f8296a55728f8cdffb318e78beb119f1a8e378e87069

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.8-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ae51cf22b2955163b9034565b5e97af2b275358df95dcc586c83c078e354bb32
MD5 d317ac98ac9a78504e290437f3423660
BLAKE2b-256 a5cd388f8c2133e5912527d746a8c2ed975358ec5ea4cec1a77c2ed871df2242

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.8-cp311-cp311-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 86f5ab112b7b90825ac345ab1dcae1b7d77a6559c60e1bb83d87c4fc028e9e98
MD5 1e9bf0ea72d71a79afd65e0417a94a6e
BLAKE2b-256 9ab9fe5e24b66aac2fa62e455589689645d4bf912b0eae03c7253b5c7b85e747

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dearcygui-0.0.8-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 3.5 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.8-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 dac5e5c3dacea57cec7ce15ae9da4f8f9689a944fcaa0acec75155d2bc5bab2e
MD5 782ec39bc9380f898beb61752922903a
BLAKE2b-256 fdb68b2be1c5aed9906be00af3307af3260b5a87367f7d4ebcbd0980af7a0f0b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.8-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 eaee3a2297871b5babbad269dab807525f898957e60232ca18e4d99d6f090f8a
MD5 ca1c01559079d5c171c328ef310e4519
BLAKE2b-256 1dae2e0b292788ac8bf64325a5176b847643570c6d96aa7044b0e1202129f3b4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.8-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 98ff6bb656c234e228133a8ccb87a91dfaa6554fc41ddc269ff908da71e585ac
MD5 6847ea48d17a2c63c1ff27c0dd977d02
BLAKE2b-256 168d51bb00c79e6f8fc17c41cf96b54b5ddde652d5b1cef970707f141f57207c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.8-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 41bb09e7f71e1d9d9554aa2286260a9cc73b21bff8e7396a8e2fca1f15db2735
MD5 db16842fb34b3b0a2f91ae28551905ec
BLAKE2b-256 9171fe905de12d22860ed6f495701be2df13c85a24bd1c9b15e2497ed83c81f9

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