Skip to main content
Help us improve Python packaging – donate today!

A Python native, OS native GUI toolkit.

Project Description

A Python native, OS native GUI toolkit.

Quickstart

To get a demonstration of the capabilities of Toga, run the following:

$ pip install toga-demo
$ toga-demo

This will pop up a GUI window with some sample widgets.

Prerequisites

Toga has some minimum requirements:

  • If you’re on OS X, you need to be on 10.7 (Lion) or newer.
  • If you’re on Linux, you need to have GTK+ 3.4 or later. This is the version that ships with Ubuntu 12.04. If you want to use the WebView widget, you’ll also need to have WebKit, plus the GI bindings to WebKit (gir1.2-webkit-3.0) installed.

If these requirements aren’t met, Toga either won’t work at all, or won’t have full functionality.

Problems with source installs

Internally, Toga is comprised of a number of subpackages - one for each platform it supports. If you install using wheels, the install process will correctly identify the required packages and install them. However, if you install from source using pip, there is a known bug in pip that causes dependencies to not be installed. It may be necessary to manually install the following pre-requisites:

  • OS X: pip install toga-cocoa
  • Linux: pip install toga-gtk toga-cassowary cassowary
  • Win32: pip install toga-win32 toga-cassowary cassowary

Problems using virtualenv under Linux

When running under Linux, Toga uses the system native python GTK+3 bindings for display purposes. However, if you’re using a --no-site-packages virtualenv, the Python bindings for GTK won’t be in your PYTHONPATH.

Unfortunately, you can’t pip install GTK+ bindings, so you have to use a workaround. To make the system GTK+ bindings available to your virtualenv, symlinking the gi module from the system dist-packages directory into your virtualenv’s site-packages:

$ cd $VIRTUAL_ENV/lib/python2.7/site-packages
$ ln -si /usr/lib/python2.7/dist-packages/gi

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:

Contributing

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.

Release history Release notifications

History Node

0.3.0.dev8

History Node

0.3.0.dev7

History Node

0.3.0.dev6

History Node

0.3.0.dev5

History Node

0.3.0.dev4

History Node

0.3.0.dev3

History Node

0.3.0.dev2

History Node

0.3.0.dev1

History Node

0.2.15

History Node

0.2.14

History Node

0.2.13

History Node

0.2.12

History Node

0.2.11

History Node

0.2.10

History Node

0.2.9

History Node

0.2.8

History Node

0.2.7

History Node

0.2.6

History Node

0.2.5

History Node

0.2.4

History Node

0.2.3

History Node

0.2.2

History Node

0.2.1

History Node

0.2.0

History Node

0.2.0.dev1

This version
History Node

0.1.2

History Node

0.1.1

History Node

0.1.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
toga-0.1.2-py2.py3-none-any.whl (390.7 kB) Copy SHA256 hash SHA256 Wheel py2.py3 Aug 23, 2014
toga-0.1.2.tar.gz (410.6 kB) Copy SHA256 hash SHA256 Source None Aug 23, 2014

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page