Toga
A Python native, OS native GUI toolkit.
Prerequisites
Minimum requirements
- Toga requires Python 3. Python 2 is not supported.
- If you're on macOS, you need to be on 10.10 (Yosemite) or newer.
- If you're on Linux, you need to have GTK+ 3.10 or later. This is the version
that ships starting with Ubuntu 14.04 and Fedora 20. You also need to install
the Python 3 bindings and development files for GTK+.
- Ubuntu 16.04 / Debian 9
sudo apt-get install python3-dev python3-gi python3-gi-cairo libgirepository1.0-dev libcairo2-dev libwebkitgtk-3.0-0 gir1.2-webkit2-3.0
- Ubuntu 18.04 / Debian 10
sudo apt-get install python3-dev python3-gi python3-gi-cairo libgirepository1.0-dev libcairo2-dev libwebkitgtk-4.0-37 gir1.2-webkit2-4.0
- Fedora
sudo dnf install pygobject3 python3-gobject python3-cairo-devel cairo-gobject-devel gobject-introspection-devel pywebkitgtk
- Arch / Manjaro
sudo pacman -Syu git pkgconf cairo python-cairo pango gobject-introspection gobject-introspection-runtime python-gobject webkit2gtk
- Ubuntu 16.04 / Debian 9
- We're working on Windows support, but not all features and widgets are supported. At a minimum, you'll need Python 3 and .NET Framework 4. This has been tested on Windows 10, but should work on 7 and 8. Pull requests, help and corrections are most welcome.
Quickstart
To get a demonstration of the capabilities of Toga, run the following:
$ pip install --pre toga-demo $ toga-demo
This will pop up a GUI window with some sample widgets.
Documentation
Documentation for Toga can be found on Read The Docs.
Community
Toga is part of the BeeWare suite. You can talk to the community through:
- @pybeeware on Twitter
- The beeware/general channel on Gitter.
Contributing
If you'd like to contribute to Toga development, our guide for first time contributors will help you get started.
If you experience problems with Toga, log them on GitHub. If you want to contribute code, please fork the code and submit a pull request.