dearpygui

Dear PyGui: A fast and powerful Graphical User Interface Toolkit for Python with minimal dependencies

https://github.com/hoffstadt/dearpygui

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 72 committers (1.4%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.3%) to scientific vocabulary

Keywords

cpp cross-platform dearpygui graphics gui imgui linux macos native python python-gui toolkit tools ui windows

Keywords from Contributors

docstring tensors typechecker typing
Last synced: 6 months ago · JSON representation

Repository

Dear PyGui: A fast and powerful Graphical User Interface Toolkit for Python with minimal dependencies

Basic Info
Statistics
  • Stars: 14,575
  • Watchers: 165
  • Forks: 730
  • Open Issues: 397
  • Releases: 27
Topics
cpp cross-platform dearpygui graphics gui imgui linux macos native python python-gui toolkit tools ui windows
Created over 5 years ago · Last pushed 6 months ago
Metadata Files
Readme Contributing Funding License Code of conduct Codeowners

README.md


Dear PyGui logo

A modern, fast and powerful GUI framework for Python

Python versions PYPI Downloads MIT License

static-analysis static-analysis Deployment Documentation Status

FeaturesInstallationHow To UseDemoResourcesSupportTech stackCreditsLicenseGallery


Themes

Features

  • Modern look — Complete theme and style control
  • Great performance — GPU-based rendering and efficient C/C++ code
  • Stable operation — Asynchronous function support
  • Fast graphs — Display over 1 million datapoints at 60 fps, zoom and pan
  • Node editor — Intuitive user interaction
  • Built-in demo — Quickly learn all features
  • Developer tools — Theme and resource inspection, runtime metrics, debugger
  • Cross-platform — Windows, Linux, MacOS
  • MIT license

        

        

Installation

Ensure you have at least Python 3.8 64bit. pip install dearpygui or pip3 install dearpygui

How to use?

Using Dear PyGui is as simple as the following Python script.

```Python import dearpygui.dearpygui as dpg

def save_callback(): print("Save Clicked")

dpg.createcontext() dpg.createviewport() dpg.setup_dearpygui()

with dpg.window(label="Example Window"): dpg.addtext("Hello world") dpg.addbutton(label="Save", callback=savecallback) dpg.addinputtext(label="string") dpg.addslider_float(label="float")

dpg.showviewport() dpg.startdearpygui() dpg.destroycontext() ```

<img src="https://raw.githubusercontent.com/hoffstadt/DearPyGui/assets/readme/firstapp.gif" alt="Dear PyGui example window">

Demo

The built-in demo shows all of Dear PyGui's functionality. To run the demo, you can run:

bash python -m dearpygui.demo

Or you can use this code to run the demo. The following impression shows a few, but not nearly all, of the available widgets and features. Since the Python code of the demo can be inspected, you can leverage the demo code to build your own apps.

Dear PyGui demo

Resources

Support

If you are having issues or want to help, here are some places you can go. - Discord Forum 💬 - Reddit

Chat on Discord       Reddit

Tech stack

Dear PyGui is built on top of Dear ImGui, including the ImPlot and imnodes extensions, and is fundamentally different than other Python GUI frameworks. Under the hood, it uses the immediate mode paradigm and your computer's GPU to facilitate extremely dynamic interfaces. In the same manner Dear ImGui provides a simple way to create tools for game developers, Dear PyGui provides a simple way for python developers to create quick and powerful GUIs for scripts. Dear PyGui is written in C/C++ resulting in highly performant Python applications. Dear PyGui is currently supported on the following platforms.

| Platform | Graphics API | Newest Version | |:---------|:-------------|:---------------| | Windows 10 | DirectX 11 | PYPI | | macOS | Metal | PYPI | | Linux | OpenGL 3 | PYPI | | Raspberry Pi 4 | OpenGL ES | PYPI |

Credits

License

Dear PyGui is licensed under the MIT License.

Sponsor

Continued maintenance and development are a full-time endeavor which we would like to sustain and grow. Ongoing development is financially supported by users and private sponsors. If you enjoy Dear PyGui please consider becoming a sponsor or buy us a cup of coffee.

     

Gallery

Plotting/Graphing

Dear PyGui includes a plotting API built with ImPlot

        

        

        

        

Node Editor

Dear PyGui includes a node editor built with imnodes

Canvas

Dear PyGui includes a drawing API to create custom drawings, plot, and even 2D games.


BasicUsageExample

SAST Tools

PVS-Studio - static analyzer for C, C++, C#, and Java code.

Owner

  • Name: Jonathan Hoffstadt
  • Login: hoffstadt
  • Kind: user
  • Location: Houston, Texas
  • Company: Metecs/NASA

Committers

Last synced: 8 months ago

All Time
  • Total Commits: 2,818
  • Total Committers: 72
  • Avg Commits per committer: 39.139
  • Development Distribution Score (DDS): 0.178
Past Year
  • Commits: 116
  • Committers: 9
  • Avg Commits per committer: 12.889
  • Development Distribution Score (DDS): 0.371
Top Committers
Name Email Commits
Jonathan Hoffstadt j****t@y****m 2,317
Preston Cothren p****n@y****m 199
Samuele Mazzi s****i@m****h 74
Jonathan Hoffstadt 3****C 60
Vladimir Ein v****b@o****m 37
Fabio Spanò f****o@m****h 13
Illu 5****t 9
Jah-On 5****n 8
Felix Uhl i****t 6
Raccoon 9****d 5
Jonathan Hoffstadt j****t@J****l 4
CodeCox 4****x 4
liu-kan l****n 4
DataExplorerUser 5****r 3
Jonathan Matthysen 5****n 3
Tim Keller g****1@g****m 3
Jonathan Hoffstadt p****t@y****m 3
İbrahim Uysal 7****v 2
vanekrus 3****s 2
mmorandi m****i 2
Tim Sweeney m****m@g****m 2
Romans 7****s 2
Praveen 2****0 2
Mohammed Chamma h****d@g****m 2
Ily 9****3 2
David Keck 3****e 2
Anthony Doupe 7****s 2
Adel Atallah 2****e 2
MadOctopus l****i@g****m 1
99hats k****h@9****m 1
and 42 more...
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 434
  • Total pull requests: 101
  • Average time to close issues: 5 months
  • Average time to close pull requests: about 2 months
  • Total issue authors: 300
  • Total pull request authors: 35
  • Average comments per issue: 3.0
  • Average comments per pull request: 1.39
  • Merged pull requests: 65
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 92
  • Pull requests: 35
  • Average time to close issues: 23 days
  • Average time to close pull requests: 25 days
  • Issue authors: 64
  • Pull request authors: 7
  • Average comments per issue: 1.61
  • Average comments per pull request: 0.74
  • Merged pull requests: 21
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • v-ein (28)
  • monkeycc (19)
  • nehonpa (13)
  • giogina (6)
  • ltmsyvag (6)
  • Atlamillias (5)
  • sailfish009 (4)
  • kuchi (4)
  • EssenWorkbench (4)
  • my1e5 (4)
  • axeldavy (4)
  • ndahn (3)
  • Umbrella167 (3)
  • ray-5050 (3)
  • fedeocire (3)
Pull Request Authors
  • v-ein (57)
  • SamuMazzi (20)
  • nvglucifer (7)
  • bandit-masked (4)
  • Mstpyt (4)
  • wcq062821 (2)
  • Atlamillias (2)
  • DokaebiYe (2)
  • bzczb (2)
  • axeldavy (2)
  • v01d-gh (2)
  • ddddhm1234 (2)
  • abellgithub (2)
  • my1e5 (2)
  • jschmer (2)
Top Labels
Issue Labels
state: pending (294) type: bug (228) type: feature (29) priority: high (25) priority: medium (12) type: docs (11) type: improvement (10) state: ready (8) category: plots (8) type: build (6) state: question (5) priority: low (4) state: duplicate (3) platform: MacOS (3) state: inactive (3) state: invalid (3) platform: Windows (3) category: textures (3) category: drawings (2) platform: Linux (2) can't reproduce (2) category: demo (1) category: node editor (1) state: approved (1) category: reusable code (1) help wanted (1)
Pull Request Labels
priority: high (2)

Packages

  • Total packages: 7
  • Total downloads:
    • pypi 92,163 last-month
  • Total docker downloads: 297
  • Total dependent packages: 45
    (may contain duplicates)
  • Total dependent repositories: 393
    (may contain duplicates)
  • Total versions: 87
  • Total maintainers: 2
pypi.org: dearpygui

DearPyGui: A simple Python GUI Toolkit

  • Versions: 36
  • Dependent Packages: 45
  • Dependent Repositories: 391
  • Downloads: 92,126 Last month
  • Docker Downloads: 297
Rankings
Stargazers count: 0.2%
Dependent packages count: 0.4%
Dependent repos count: 0.7%
Average: 1.3%
Downloads: 1.3%
Forks count: 2.1%
Docker downloads count: 3.0%
Maintainers (1)
Last synced: 6 months ago
proxy.golang.org: github.com/hoffstadt/dearpygui
  • Versions: 23
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 6.5%
Average: 6.7%
Dependent repos count: 7.0%
Last synced: 6 months ago
proxy.golang.org: github.com/hoffstadt/DearPyGui
  • Versions: 23
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 6.5%
Average: 6.7%
Dependent repos count: 7.0%
Last synced: 6 months ago
pypi.org: pixels

DearPyGui: A simple Python GUI Toolkit

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 9 Last month
Rankings
Stargazers count: 0.2%
Forks count: 2.0%
Dependent packages count: 10.1%
Dependent repos count: 21.6%
Average: 22.7%
Downloads: 79.4%
Maintainers (1)
Last synced: 6 months ago
pypi.org: voxels

DearPyGui: A simple Python GUI Toolkit

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 5 Last month
Rankings
Stargazers count: 0.2%
Forks count: 2.1%
Dependent packages count: 10.1%
Dependent repos count: 21.6%
Average: 23.6%
Downloads: 84.3%
Maintainers (1)
Last synced: 6 months ago
pypi.org: improved-dearpygui

DearPyGui: A simple Python GUI Toolkit

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 10.7%
Average: 35.4%
Dependent repos count: 60.2%
Maintainers (1)
Last synced: 7 months ago
pypi.org: dearpyguiupdated

DearPyGui: A simple Python GUI Toolkit

  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 23 Last month
Rankings
Dependent packages count: 10.7%
Average: 35.4%
Dependent repos count: 60.2%
Maintainers (1)
Last synced: 6 months ago