hoffstadt / DearPyGui

Dear PyGui: A fast and powerful Graphical User Interface Toolkit for Python with minimal dependencies
https://dearpygui.readthedocs.io/en/latest/
MIT License
13.33k stars 694 forks source link
cpp cross-platform dearpygui graphics gui imgui linux macos native python python-gui toolkit tools ui windows


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

        

        

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.

import dearpygui.dearpygui as dpg

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

dpg.create_context()
dpg.create_viewport()
dpg.setup_dearpygui()

with dpg.window(label="Example Window"):
    dpg.add_text("Hello world")
    dpg.add_button(label="Save", callback=save_callback)
    dpg.add_input_text(label="string")
    dpg.add_slider_float(label="float")

dpg.show_viewport()
dpg.start_dearpygui()
dpg.destroy_context()


Dear PyGui example window

Demo

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

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.

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.