Skip to content

What's going on?

Jonathan Hoffstadt edited this page Sep 14, 2022 · 2 revisions

Background

Dear PyGui started in June 2020 at a time when we used Python on a regular basis. Due to some luck and good timing, the library picked up some popularity relatively quick. Users who were around prior to 1.0, know that the API had some chaotic changes throughout those early versions (which we are sure lost us some early adopters). Not only has the public API had chaotic changes but the internal code has as well as our coding styles and philosophies have evolved. Throughout the course of Dear PyGui's life cycle we have learned a tremendous amount and enjoyed most of it!

Over the last 6 months or so, I've had less time to use Python/DPG due to a variety of factors including new jobs, new children, and other personal events. The biggest factor however has been that I no longer enjoyed it. This itself was for several reasons:

  1. No longer using Python on a regular basis, which meant no longer using DPG on a regular basis.
  2. No longer agreed with the internal architecture (complex object oriented magic)
  3. Realized I preferred the immediate mode API we worked so hard to hide for the Python API
  4. As Dear ImGui has grown in popularity, so have the number of developers wrapping it in Python (though we are the most popular one I believe)
  5. Our reliance on Dear ImGui, ImPlot, ImNodes, ImFileDialog, and Freetype causes difficulties in adding new features and fixes some issues
  6. Feeling like our work was too piggybacked on the work of Omar Cornut's amazing Dear ImGui.

What is happening to Dear PyGui 1

Dear PyGui 1 will go into "maintenance mode". Focus for will be on bug fixes, stability, and new Python versions. Very small features but they are not the focus. We have no plans on abandoning or ignoring Dear PyGui 1. The focus on stability is for the sole purpose of making it low effort to maintain while focusing on Dear PyGui 2.

What are the plans for Dear PyGui 2

The intent is to resolve all the issues mentioned above. For us to stay interested in the project, it has to be something we will use regularly. Thus, the project needs to be usable in both C & Python. The internal architecture will be much simpler. We will stick to mostly immediate mode.

But the biggest part of the plan... we will no longer be built on top of Dear ImGui. Instead, we will be built from scratch and on top of our own UI library and engine. The current name we will start with is Pilot Light. We have been doing countless prototypes and testing to decide if we really wanted to go this route and we've decided it would be best for us personally to do so. We have started setting up the repo and will open it up soon. The repo will have more information.