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.7.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.7-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl (7.8 MB view details)

Uploaded PyPymanylinux: glibc 2.28+ x86-64

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

Uploaded CPython 3.13Windows x86-64

dearcygui-0.0.7-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.7-cp313-cp313-macosx_11_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dearcygui-0.0.7-cp313-cp313-macosx_10_15_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.13macOS 10.15+ x86-64

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

Uploaded CPython 3.12Windows x86-64

dearcygui-0.0.7-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.7-cp312-cp312-macosx_11_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dearcygui-0.0.7-cp312-cp312-macosx_10_15_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.12macOS 10.15+ x86-64

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

Uploaded CPython 3.11Windows x86-64

dearcygui-0.0.7-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.7-cp311-cp311-macosx_11_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dearcygui-0.0.7-cp311-cp311-macosx_10_15_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.11macOS 10.15+ x86-64

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

Uploaded CPython 3.10Windows x86-64

dearcygui-0.0.7-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.7-cp310-cp310-macosx_11_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

dearcygui-0.0.7-cp310-cp310-macosx_10_15_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.10macOS 10.15+ x86-64

File details

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

File metadata

  • Download URL: dearcygui-0.0.7.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.7.tar.gz
Algorithm Hash digest
SHA256 ddce1de47dcd04f6c06fd497122e7265f52981f58d16344a856a67ca9423b1fe
MD5 11edffc5ca97484decb1c6937bde07eb
BLAKE2b-256 b622ede9ca016c25d8c1a53d010329f4f36c2691d8fa3e9fa19e534319e87730

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.7-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0c958943c051c73296fd2c47c7dbc8dd374eb6e786d910351d175222735a469a
MD5 489e2dc34a043225511bc812ac06193d
BLAKE2b-256 2dba098d9004a02b2a498415be0e2474e88991e38b46835ebb44741879d8b5c1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dearcygui-0.0.7-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.7-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 c125f0c026d48be22f43de8ef5d67e822b84b2f80f2a4b6e0142ad9bb51de257
MD5 73569331e48af5c05902730fa96b6a0b
BLAKE2b-256 1fb8839840706a91b3837853d8fed2c553fb17711a16a03a814b7700f77c6429

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.7-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 28899c339104022e183b565e3f944ac449e930d537358b9022887aba0fb39d26
MD5 0064599d184748e134f51d644721d6e7
BLAKE2b-256 c0d85c94a39b562630fa0a59aa596c4077837302082f72a72302353e669d892f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.7-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c24dffd5d3e040944d027d2f6176deb558946f2ac46850b7020834b1c2cf7c89
MD5 8c68012c8349be6ce4fbc4d76c48a2cb
BLAKE2b-256 2361fc9b014dab65716c4f0679c69c7599081a4ef393ec9ca4ec6303ba91818a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.7-cp313-cp313-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 dc3ac0386a8c492deac38e71b867c13f458f3ead5eece8d2aab54b3414f4d8bb
MD5 9d7e94c9c152605f733993760eebeed7
BLAKE2b-256 2118da82407211699d7a511dffc08e8853ad3d91db0e39bd01361eec979c1568

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dearcygui-0.0.7-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.7-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 6a6404bf9ba0483f52a7c728a1b510341e699848cfcea5b5811701873e55385d
MD5 b1a5a8d68703f06261b0e5877370dbac
BLAKE2b-256 e527ab874a29e60e19469abc569ebb5d9fd1826f4adacc4067c7da837e610784

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.7-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3522220fee0aa70e723f905baae6c2d528e96ecc0c5923f3742b9822e2d15683
MD5 467770c21fa9ff3cc420b2d125502953
BLAKE2b-256 ecf5a5232a10863de7673254dac5053becb377637b202a1eb83a41b1355a18f1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.7-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9ca14eabcd74f360cf99f3e157c6e70a37c90e800246910459565c9a39cc2a83
MD5 1ea14b6ef017f2bbf3e7c8b497317374
BLAKE2b-256 d49443f1427c794a1e9f7464826caa3218d30f10306856d1882a49a478dfe3f1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.7-cp312-cp312-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 158cd75478a83156e772911ca4e53bb219d8e62c945409ac7ad90dd1c56db35b
MD5 cda62f729b05cd27222b9b8a6493dfc7
BLAKE2b-256 5e1f2ee99e1cee57e7d8048aab7edc83c778c323395b00ceeed9b852d846f1b7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dearcygui-0.0.7-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.7-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 32f5989bfdaedc938301c729675dfe1f843500c8dbc70bc541618456dc1c205d
MD5 44ed25592776e548f408e7b987a133b0
BLAKE2b-256 b57f13cd1b5868b3449efd435a6b4cb9a0a01f9455144c9d723485a852b97ada

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.7-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a5edc9b21fc50e6924ad0f0327164983208da373ba0d053924b6865ddfbb4b22
MD5 913586bbc6a7b22cb1ebaa035c6c61e8
BLAKE2b-256 53430ea56b196f71c05b933e09ed93d7fb5003011ec076d2786e6360f28cdd52

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.7-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 384de93e5df327c75936d7768792d2ccf6c9e3b9d6bb8b98bfba35390fbac674
MD5 58d9e63016c62f5eb3e09947720d5271
BLAKE2b-256 1d90b72108a09bd7db61b18992386f1e534f69f22e13abf721bee32fb4bd238d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.7-cp311-cp311-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 22469f28d2c983e859f9f56c4c3432d7a97be374f4c0493d3519e07ab21af930
MD5 cf8eaa745e26829eafddb3b20a127c28
BLAKE2b-256 8244461f24f7cd8056ced2de15b6ce7590f19ef56075caa00ce93fb844445461

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dearcygui-0.0.7-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.7-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 321635811b22b987a3b31180bd008500ac7a5d3d8b33aa8e0f464e69f58ac8aa
MD5 78db86bc78597dd81669d0e04e2c5432
BLAKE2b-256 cefb0d6cf55c85cfc5348190140ec5b604e5e1316c4542e819484e698b9ad4ec

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.7-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bc3818c6912c09e225688bf7cc4850750af6f262b67bb482dea7f4b7ef304a04
MD5 62862bc4222469287c5fe8986bf2bab3
BLAKE2b-256 31e40ce1621eb34a8850fa021a5ff3b26b6ef89dd67bacfb69e5fa5f6976b86f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.7-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7b6cd2e7a0c03f8d48f0e14a20d23433dbc7c8dd46ef79baf407dec66e5196c8
MD5 05c3bab23090f98fdf06ca37dab6e732
BLAKE2b-256 f230ba57f4123a3b719fa212073f416fa3cda21d9cd9246915e6dc9cde1dbf1a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dearcygui-0.0.7-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 0356497825410b80ce22b720ea53ea49b3d35417c6aacb3b5b193d817aabff33
MD5 795ebacea5891e658ab82dfcfdd2f796
BLAKE2b-256 dbed39649a1d882f2b0b499117146606cade910a51d75f7b1b1283eda283b25d

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