Python GUI Frontend Options Comparison
Mainly for the (cross-platform) Python GUI frontend options.
- CEF (Chromium Embedded Framework). Pro: can use the same way of MVC thinking (modern html5); build-in chromium browser. Con: someone said it may need a little c++.
- PyQt (v5). Pro: big community, good doc (for c++). Con: c++ way of thinking, just the language is py (the official GUI tutorial lacks GUI screenshots!); pay for commercial usage; still often needs c++.
- Tkinter. Pro: build-in w/ py, big community. Con: //TODO.
- electron / nwjs (bad word of mouth) /javafx / swiftui / flutter : Pro: quick to develop. Con: using node.js, too slow to run and to learn. // though it is possible for experts to make VSCode using electron.
- wxPython: Pro: small-to-middle-size community… Con: too new, few people.
See also : a demo project combining some good parts (though sunny does not agree with the wording of explanation).
(wxPython - Windowing
CEF Python - Portable browser
Flask - Local web server
Gevent - Launches Flask
Bootstrap - Web UI
xmlhttprequest - Communication with Flask to update UI)