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.9.tar.gz (29.1 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.9-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl (8.9 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ x86-64

dearcygui-0.0.9-cp313-cp313-win_amd64.whl (3.6 MB view details)

Uploaded CPython 3.13Windows x86-64

dearcygui-0.0.9-cp313-cp313-manylinux_2_28_x86_64.whl (9.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

dearcygui-0.0.9-cp313-cp313-macosx_11_0_arm64.whl (4.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dearcygui-0.0.9-cp313-cp313-macosx_10_15_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.13macOS 10.15+ x86-64

dearcygui-0.0.9-cp312-cp312-win_amd64.whl (3.6 MB view details)

Uploaded CPython 3.12Windows x86-64

dearcygui-0.0.9-cp312-cp312-manylinux_2_28_x86_64.whl (9.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

dearcygui-0.0.9-cp312-cp312-macosx_11_0_arm64.whl (4.4 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dearcygui-0.0.9-cp312-cp312-macosx_10_15_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.12macOS 10.15+ x86-64

dearcygui-0.0.9-cp311-cp311-win_amd64.whl (3.6 MB view details)

Uploaded CPython 3.11Windows x86-64

dearcygui-0.0.9-cp311-cp311-manylinux_2_28_x86_64.whl (9.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

dearcygui-0.0.9-cp311-cp311-macosx_11_0_arm64.whl (4.4 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dearcygui-0.0.9-cp311-cp311-macosx_10_15_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.11macOS 10.15+ x86-64

dearcygui-0.0.9-cp310-cp310-win_amd64.whl (3.6 MB view details)

Uploaded CPython 3.10Windows x86-64

dearcygui-0.0.9-cp310-cp310-manylinux_2_28_x86_64.whl (9.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

dearcygui-0.0.9-cp310-cp310-macosx_11_0_arm64.whl (4.4 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

dearcygui-0.0.9-cp310-cp310-macosx_10_15_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.10macOS 10.15+ x86-64

File details

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

File metadata

  • Download URL: dearcygui-0.0.9.tar.gz
  • Upload date:
  • Size: 29.1 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.9.tar.gz
Algorithm Hash digest
SHA256 9d02c9ec1ad6c41e15fa6a8bfe473aadb994db4f3da0c6c5c6867495678e3f72
MD5 b14337cecbbd37985173e5a928954fc1
BLAKE2b-256 d278c7d15714d859cb23e22516c52c6f8a324fabe8caaeec2d188acbf765b21d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.9-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4bbc7c752ab5edb30dcb6d3d778f53e8fd8ed03f1710de5b7f490950b40a186f
MD5 05f9a5147f1b81f7913e6ec549095719
BLAKE2b-256 28e1a5600d6765753d678787e5934d1ffa468915ae5c8a2d91871d734634448d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dearcygui-0.0.9-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 3.6 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.9-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 8a1e42d97d2377486398ae6b3595752800c9b8a0d92b60b187425468b6916d21
MD5 7f2e791d7d6a211b6f7e1383c48e521d
BLAKE2b-256 7cdb9407024738b425bee4854a2ff390fe055cd7cd3ec9494255410e3e9dfae7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.9-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9e19f6e14b9f3e70105e2aad1e254562cda478efa2cd08cd031a4c8ad80d798b
MD5 da68dd10d22de580de2fe20e9597af52
BLAKE2b-256 ece5139dfce1fd81978c9046f6a6d23e9de22aeca6043597921f0c19135a5f04

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.9-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 988e403204f10e321c819a58ae6bf486fb1a05270907130a0d2efee59ff66b72
MD5 7ae8121f22b7d495bc10ba15c711c66a
BLAKE2b-256 b8d92441712778a60a1ba315b63c545a7f7d110fc509e7e0042682356ea01ba7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.9-cp313-cp313-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 90fe2e0f34b91e96bdd5a88037fca812e11afd266a82fe2465a4ba16f723a488
MD5 a5824df8db08b220a5a432c9c1b33ec2
BLAKE2b-256 7317b2d6403cb25fa5e8f7b97704f8bf4895d3ade0eae5d5d9c9a622f0125d94

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dearcygui-0.0.9-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 3.6 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.9-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 fd6140600784381e41137b1c2fb00b9ae84fee846e5db31f43abdd74a804377e
MD5 d1c0d9be58e65cd551b355d89d2a6822
BLAKE2b-256 c3155c6eab8cdc5119d361256686d46724c5cf5a836d2716305a8ec707b7e2c0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.9-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ade3b59643369be971290d6ee5ac52c185d4f489f5354be289179cfcc82c323a
MD5 2ce4328d4969490d408949f60f2b93af
BLAKE2b-256 e5828e258152b89fb599a753b3d1d96f793df71414bf08829a7eb2d928f29de3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.9-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d5fe463655d020c19dc8d2aeb0818735f6d6d7fa8b7220977a6e9cb69814eb46
MD5 28e3d442b1c4afe6b20db9438194662f
BLAKE2b-256 8a10b394da7c0eb68a0e487a91bd02751700e856ae94703fbec952d1a3affd78

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.9-cp312-cp312-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 bf1b706c44e0ca3821af1646bd0c8c05c9e44a10576542d75fb3215cda3eb0a5
MD5 ab3495595201fdc70b7d98e87908f63b
BLAKE2b-256 19b134ef0da63cded02ca167ca87e6e0e33fe27bd9826ae5ab0039821189a087

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dearcygui-0.0.9-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 3.6 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.9-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 83daac678caa168f1a38da76f647d724d95581619bd90b7bd6785a859929fb40
MD5 8253e971b7e759aa63759d5cee50f9ce
BLAKE2b-256 ac7359244e5a280255b2357584cda3004b844f786322d30794a1941c5dedf85f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.9-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f7346cb6f0dd9a61f3daef0acabaf3b07d99c26f654d90ce8dc81507135bf578
MD5 8827a85a9eb1ee6976b33b3e72e228c7
BLAKE2b-256 a0353fc76e918e621cf8873fe1249680d99cbee482d3a756a55df36378af4622

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.9-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 28b0c6d346d504c1e790b160294f3f9ec625a648f0a21ba0b1db54791e9a2bf4
MD5 16ecb19890eaf576ae6a3b0b7a7fd109
BLAKE2b-256 a7c61f45ea6f1e12f591d3f42f918a241d20b3a759b0215a092bc860bf09de3f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.9-cp311-cp311-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 3a064f7dc1c1c5b86d127b96592d621390b9f578784a028f66010e82e7a3a708
MD5 9a1b018a058cce8a75738a7e75803d21
BLAKE2b-256 8fb656029f4e7171d1bfb939dfa4682123a475a78ca441e92088eb82b9510aaa

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dearcygui-0.0.9-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 3.6 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.9-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 50f3ed2832f51cdbb6f80926726c3c4a5787e6b2b076aa37a6b63820787408e8
MD5 f636e3ac5f0f450a9eaece39b6d90ee0
BLAKE2b-256 c1b5a1c82ee785ef4bee523ed6cdd34f20fb08ba83ec6444344cbebf02df3e2b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.9-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7c1bc10f0e700e5ffe01bcd5be06372161e75b1cc82d6d8aa905c9fa9c8f83b6
MD5 ea9282861618d65824ea69db2fd6fce2
BLAKE2b-256 bf7018725e2ecaee793691894920f1b6ddec7f913ae82267c2c0162304a03d53

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.9-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c94d0b03b5ca08e426341f8a8aa7f5a3f78a4d00bfcc22d9ede1b4447a46f888
MD5 dd9070fc4fe14150271f45894cbc8a97
BLAKE2b-256 fce2c06c5dea839c83d463858f93b224cf9f8ca151854d0419549b89acd2246b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.9-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 2e57ea2ecf6634ed246b5c37837ae09c7c8fc9cc000339939f65b53b551df20d
MD5 0455c4a69246c90856736d2f8b7d780f
BLAKE2b-256 2e3a69448e1b260e7c4c6f6525bee20ef079ef4ec08405bec314e953e245c186

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