Mykivy
Mykivy
Built with rapid development and modern devices in mind, Kivy is a toolkit for
Linux (including the Raspberry Pi), Windows, Mac, and Android. The project is
focused on "innovative user interfaces", and it's been used for multimedia
applications, like music controller apps for phones to whiteboarding applications
that take up the entire wall of a meeting room.
Kivy doesn't have a visual layout program like QtCreator and Glade, but it uses its
own design language to help you associate UI layout with code objects. This makes
it easy for you to compartmentalise (both mentally and in the layout code) the
classes and functions in your application. Kivy also hosts the Kivy Garden, a
repository of user-created widgets and add-ons, so if you're thinking of creating
something that Kivy itself doesn't provide, you may it already exists in the
Garden.
These are not the only choices you have available to you, not even by a long shot.
For more options, check out the "GUI programming in Python" page on the official
Python Software Foundation wiki, which lists dozens of other tools. Solutions are
available to bind Python to many different widget libraries and GUI tools such as
FLTK, FOX, and many others. While beginners should probably avoid projects
providing only partial implementations, or those no longer actively maintained,
there are plenty of good tools for a variety of situations.
Many of the options out there are for traditional applications that take on the
windowed look and feel of their parent desktop environment, but there are also
times when you may wish to do something completely different, for example, within a
video game. There are great libraries for these situations too, like pygame,
pyglet, and Panda3d.
Do you have a favorite not mentioned here? Let us know in the comments below!
Are you interested in reading more articles like this? Sign up for our weekly email
newsletter.