|
1 | | -<div align="center"> |
2 | 1 |
|
3 | | - |
| 2 | +<p align="center"> |
| 3 | + <img height="250" src="https://pysimplegui.net/images/logos/Logo_Full_Transparent_Cropped.png"> |
| 4 | + |
| 5 | +</p> |
4 | 6 |
|
5 | | -</div> |
6 | 7 |
|
| 8 | + |
| 9 | +# Open Source Once Again... |
7 | 10 |
|
8 | | -# PySimpleGUI 6 |
| 11 | +Hey, it's Mike.... |
9 | 12 |
|
10 | | -6-Apr-2026 |
11 | 13 |
|
12 | | -**Wait, what?** |
| 14 | +We gave commercialization a try. It was an incredible experience, but it didn’t generate the resources needed to sustain PySimpleGUI at the level we had hoped. In February 2025, we announced that PySimpleSoft would be shutting down, with support continuing through the end of 2025. |
13 | 15 |
|
14 | | -<div> |
| 16 | +That process is now complete. The next question was what to do with the code, documentation, and repositories. I always planned to keep the repos available for reference—so the decision came down to the software itself. |
15 | 17 |
|
16 | | - |
17 | 18 |
|
| 19 | + |
| 20 | +# PySimpleGUI 6 |
| 21 | + |
| 22 | +<div> |
| 23 | +<img src="https://pysimplegui.net/images/logos/psg6_logo_plain.png" height="80" alt="Alt text"> |
18 | 24 | </div> |
19 | 25 |
|
20 | 26 |
|
21 | | -As we've been winding down the commercialization effort, shutting down servers and archiving materials, I saw this week that the PySimpleGUI repositories are going to be of little use. Everything was switched over to using PySimpleGUI 5. The documentation is PySimpleGUI5 specific as well. So, I made a decision a couple of days ago to get the project into a state where it's at least usable and hopefully even useful. |
| 27 | +I’ve released the PySimpleGUI 5 code as open source. After removing licensing and security components, it’s now available under the LGPL3 license on GitHub and PyPI. |
22 | 28 |
|
23 | | -## Version 4 on PyPI 4.60.5.0 |
| 29 | +## Installing from PyPI |
24 | 30 |
|
25 | | -A first step was to put version 4.60.5 up on PyPI. Version 4.60.5.0 was posted this week so that `pip install PySimpleGUI` will provide a version of PySimpleGUI that's solid. |
| 31 | +To install the latest version (v6): |
26 | 32 |
|
27 | | -## PySimpleGUI 6 - Back to LGPL3 |
| 33 | +`python -m pip install PySimpleGUI` |
28 | 34 |
|
29 | | -There were several years of development that went into the PySimpleGUI 5 effort. Rather than have those bug fixes and new features languish and be useless, I'm releasing them as Open Source. |
| 35 | +If you need the older version (4.60.5.1): |
30 | 36 |
|
31 | | -Not all of the Version 5 code is in 6. Things like the upgrade mechanism and of course the licensing has been removed. As far as functionality, it matches the SDK posted in the [Docs.PySimpleGUI.com](https://Docs.PySimpleGUI.com) documentation. |
32 | 37 |
|
33 | | -## What to expect ahead |
| 38 | +`python -m pip install PySimpleGUI==4.60.5.1` |
34 | 39 |
|
35 | | -### Applications, Demo Programs, etc |
| 40 | +## Installing from Github |
36 | 41 |
|
37 | | -The applications `psgdemos`, `psgfiglet`, `psghotkey` have all been upgraded to 6 and posted on GitHub and PyPI. The remaining applications are being updated as well. |
| 42 | +The GitHub repo has the most up-to-date code. You can install directly without cloning: |
38 | 43 |
|
39 | | -### Version 6 Uploaded to PyPI |
40 | 44 |
|
41 | | -On Tues 14-Apr-2026 PSG Version 6 was posted to PyPI. There were a LOT of changes that have been made over the years since version 4 was released. Hoping that it all goes well! Feel free to open an issue if you run into trouble. |
42 | | -<div> |
| 45 | +`python -m pip install --upgrade https://github.com/PySimpleGUI/PySimpleGUI/zipball/master` |
43 | 46 |
|
44 | | - |
| 47 | +Or clone/download the repo and install locally: |
45 | 48 |
|
46 | | -</div> |
| 49 | +`python -m pip install .` |
| 50 | + |
| 51 | +## Longer Term Outlook |
47 | 52 |
|
| 53 | +I’m still wrapping up the transition from version 5 to 6, including the docs. After that, I’m honestly not sure what the long-term future looks like—but if the past 8 years are any indication, I’m not great at predicting it. |
48 | 54 |
|
49 | | -### Maintenance & Support |
50 | 55 |
|
51 | | -I don't have a firm grasp of the future beyond a few weeks at this point. If the past 8 years is any indication, I'm not very good at making predictions. |
| 56 | +For now, I’m here and happy to help. |
52 | 57 |
|
53 | | -## Installing |
| 58 | +## Thank you |
54 | 59 |
|
55 | | -You can install the latest released version from PyPI with a simple: |
| 60 | +PySimpleGUI has been a once-in-a-lifetime experience. It’s been amazing to see what people have built and to be a small part of it. Thanks to everyone who supported the project over the years. |
56 | 61 |
|
57 | | -## PyPI |
| 62 | +--------------------------------- |
58 | 63 |
|
59 | | -`python -m pip install PySimpleGUI` |
60 | 64 |
|
61 | | -## Github |
| 65 | +# What is PySimpleGUI? |
62 | 66 |
|
63 | | -You can install the latest version straight from the PySimpleGUI GitHub repo without downloading the repo by running: |
| 67 | +PySimpleGUI is a wrapper for tkinter (and other GUI libraries) that transforms the GUI SDK into a simpler, more compact architecture while still providing detailed customization. No prior GUI programming experience needed. |
64 | 68 |
|
65 | | -`python -m pip install --upgrade https://github.com/PySimpleGUI/PySimpleGUI/zipball/master` |
| 69 | +This is an entire interactive application. |
66 | 70 |
|
67 | | -If you want to download the repo then download/close and run in the downloaded folder: |
| 71 | +```python |
| 72 | +import PySimpleGUI as sg |
68 | 73 |
|
69 | | -`python -m pip install .` |
| 74 | +# Define the window's contents |
| 75 | +layout = [[sg.Text("What's your name?")], |
| 76 | + [sg.Input(key='-INPUT-')], |
| 77 | + [sg.Text(size=(40,1), key='-OUTPUT-')], |
| 78 | + [sg.Button('Ok'), sg.Button('Quit')]] |
| 79 | + |
| 80 | +# Create the window |
| 81 | +window = sg.Window('Window Title', layout) |
| 82 | + |
| 83 | +# Display and interact with the Window using an Event Loop |
| 84 | +while True: |
| 85 | + event, values = window.read() |
| 86 | + # See if user wants to quit or window was closed |
| 87 | + if event == sg.WINDOW_CLOSED or event == 'Quit': |
| 88 | + break |
| 89 | + # Output a message to the window |
| 90 | + window['-OUTPUT-'].update('Hello ' + values['-INPUT-'] + "! Thanks for trying PySimpleGUI") |
| 91 | + |
| 92 | +# Finish up by removing from the screen |
| 93 | +window.close() |
| 94 | +``` |
| 95 | + |
| 96 | +This is the window that's created. |
| 97 | + |
| 98 | + |
| 99 | + |
| 100 | +Here's the same window after some user interaction. |
| 101 | + |
| 102 | + |
| 103 | + |
| 104 | +## Documentation - want to learn more? |
| 105 | + |
| 106 | + |
| 107 | +You'll find **extensive** documentation at: |
| 108 | + |
| 109 | +https://Docs.PySimpleGUI.com |
| 110 | + |
| 111 | +## Contributing |
| 112 | + |
| 113 | +PySimpleGUI has always been developed more like a proprietary product than an open source project. Pull requests aren't accepted. |
| 114 | + |
| 115 | +## AI.... |
| 116 | + |
| 117 | + |
| 118 | + |
| 119 | +Seems most projects have something to say about AI usage now. This is my **opinion** and how I've decided to use AI. It's what's right for me. It might not be right for you or anyone else. |
| 120 | + |
| 121 | +I use LLMs to search and summarize documentation, lookup errors, do research, get knowledge. I don't use LLMs to write code. My reason is very simple. |
| 122 | + |
| 123 | +### **I like to write code.** |
| 124 | + |
| 125 | +I fell in love with programming 50 years ago. Writing software is my happy place. Why would I give that to a computer to do instead of getting the enjoyment I get from doing it? AI can generate lots of things. The feeling I get writing software is not one of the things AI can generate. |
| 126 | + |
| 127 | +I'm not in a hurry. If I wanted code written for me, I would have opened the project up to pull requests years ago, but I didn't because I wanted to write the code. It's fun! |
| 128 | + |
| 129 | +### PySimpleGUI in the AI era |
| 130 | + |
| 131 | +A common question in software today is whether a library is still relevant. The answer is yes, people discover and install PySimpleGUI every day. GUI applications are often built incrementally. As features are added, layouts change, buttons move, and the code needs to evolve. That’s much easier when the code is understandable, whether it was written by a person or an AI initially. |
| 132 | + |
| 133 | +I use PySimpleGUI regularly, and I can’t imagine building a Windows app without it. I’ve recently been working on a 6502 breadboard computer. I built a bus analyzer using a couple of Raspberry Pi Picos and a PySimpleGUI app to control everything from Windows. Coding up a windows application to be the front-end to my tools is very easy for me to do using PySimpleGUI. |
| 134 | + |
| 135 | +That’s reason enough for me to keep working to clean up the ecosystem and keep it running well. |
| 136 | + |
| 137 | +## License & Copyright |
70 | 138 |
|
71 | | -## More updates coming... |
| 139 | +Copyright 2018-2026 PySimpleGUI. All rights reserved. |
72 | 140 |
|
73 | | -Changes are rolling out onto GitHub and PyPI every few days. They'll continue until everything gets switched over to Version 6. |
| 141 | +Licensed under LGPL3. |
0 commit comments