
The GUI looks pretty good on all of them, so the cross-platform claim checks out! 2. I’ve used PyQt on four different platforms - macOS, Windows, Ubuntu, and elementary OS.

Against: Not Qt, but seems decent otherwise. Against: Does not look native, less popular than PyQt/PySide. In favour: Easy to set up, since it’s pre-installed with Python. TkInter: A GUI framework that comes pre-installed with Python.Against: Does not support Qt5, a little bit less well-documented because it’s less well funded than PyQt. In favour: Less restrictive licensing (LGPL instead of GPL). Pyside: Another framework for bindings for Qt.Since my project was open-source anyway and uses the MIT license, this was fine by me. That means that if you distribute the Qt Gui Toolkit as part of your application binary, your program must also be licensed under a GPL-compatible license. Something that you should consider about PyQt5 is that licensed under the GPL 3.0 license. Creating a package in an expected file formatįor creating a GUI in Python, I chose to use PyQt5, a framework that provides Python bindings for the great C++ Qt framework.Turning the project into a self-contained executable file.


This is the first part of the series where I write about things I learned while writing a desktop app.
