+1 a PyGObject-re, mivel a PyChess is ebben készül :)
A többszálú programok írása is lehetséges, csak nagy odafigyelést igényel, és a Gtk3 hívásokat illik a fő szálban végrehajtani Glib.idle_add() segítségével. A PyChess-ben régebben ezt csináltuk, de a Python3-ra való átálláskor egyúttal ezektől is megszabadultunk, és átálltunk az asyncio használatára.
http://python-gtk-3-tutorial.readthedocs.io/en/latest/index.html
https://pygobject.readthedocs.io/en/latest/index.html#
https://lazka.github.io/pgi-docs/index.html
PyQt tutorial témában hirtelen ezt az oldalt találtam https://martinfitzpatrick.name/tag/pyqt/
--
♙♘♗♖♕♔