Skip to content

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

License

Notifications You must be signed in to change notification settings

Prem95/DearPyGui

Β 
Β 

Repository files navigation

Dear PyGui
(This library is available under a free and permissive license however, if you enjoy using Dear PyGui please consider becoming a Sponsor)

Python Version PYPI Downloads

build status static-analysis Deployment Documentation Status

Dear PyGui is a simple to use (but powerful) Python GUI framework. Dear PyGui is NOT a wrapping of Dear ImGui in the normal sense. It is a library built with Dear ImGui which simulates a traditional retained mode GUI (as opposed to Dear ImGui's immediate mode paradigm).


Themes

Dear PyGui is fundamentally different than other Python GUI frameworks. Under the hood, Dear PyGui uses the immediate mode paradigm and your computer's GPU to facilitate extremely dynamic interfaces. 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

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.

Installation - Usage - Resources - Support
Features - Sponsors - Credits - License

Installation

Ensure you have at least Python 3.6 64bit.

pip install dearpygui
or
pip3 install dearpygui

Resources

Chat on Discord Reddit

  • Documentation comprehensive documentation, tutorials, and examples.
  • Development Roadmap major future features and changes.
  • Feature Tracker all proposed new features.
  • Bug Tracker current bugs and issues.
  • Internal Documentation: Run the show_documentation command from within the library to view a reference guide.
  • Complete Demo: You can also view a mostly complete showcase of Dear PyGui by running:
import dearpygui.dearpygui as dpg
from dearpygui.demo import show_demo
show_demo()
dpg.start_dearpygui()

Usage

Using Dear PyGui is a simple as creating a python script like the one below:

Code:

import dearpygui.dearpygui as dpg

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

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.setup_viewport()
dpg.start_dearpygui()

Result:
BasicUsageExample

Features

Plotting/Graphing

Dear PyGui includes a plotting API (ImPlot Wrapping)

Node Editor

Dear PyGui includes a node editor API (imnodes Wrapping)

Canvas

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

Tools

Dear PyGui includes several tools to help developers with DearPyGui app development including built-in documentation, logging, source viewer, and other tools:
BasicUsageExample

Support

If you are having issues or want to help, here are some places you can go:

Sponsors

GitHub Sponsors Open Collective

If you enjoy Dear PyGui please consider becoming a sponsor.

Ongoing Dear PyGui development is financially supported by users and private sponsors.

These include:

Thank you to all other sponsors for keeping this project moving forward!

Credits

Developed by Jonathan Hoffstadt, Preston Cothren, and every direct or indirect contributor.

Omar Cornut for all his incredible work on Dear ImGui.

Evan Pezent for all his work on ImPlot.

Johann Muszynski for all of his work on imnodes.

License

Dear PyGui is licensed under the MIT License.

About

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

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 87.5%
  • Python 9.7%
  • CMake 1.0%
  • Objective-C++ 0.8%
  • C 0.8%
  • Shell 0.1%
  • Other 0.1%