.. include:: icons.rst .. title:: Overview .. toctree:: :hidden: :titlesonly: :maxdepth: 1 getting_started changelog bugs_repo guide/index devguide/index packagingguide maintguide further contact .. image:: images/pygobject.svg :align: center :width: 400px :height: 98px | .. include:: ../README.rst :start-after: | :end-before: ---- If you want to write a Python application for `GNOME `__ or a Python GUI application using GTK+, then PyGObject is the way to go. For more information on specific libraries check out the "`Python GTK+ 3 Tutorial `__" and the "`Python GI API Reference `__". .. code:: python import gi gi.require_version("Gtk", "3.0") from gi.repository import Gtk window = Gtk.Window(title="Hello World") window.show() window.connect("destroy", Gtk.main_quit) Gtk.main() How does it work? ----------------- .. figure:: images/overview.svg :width: 600px :height: 222px :align: center PyGObject uses `glib `__, `gobject `__, `girepository `__, `libffi `__ and other libraries to access the C library (libgtk-3.so) in combination with the additional metadata from the accompanying typelib file (Gtk-3.0.typelib) and dynamically provides a Python interface based on that information. Who Is Using PyGObject? ----------------------- * `Anaconda `__ - an installation program used by Fedora, RHEL and others * `D-Feet `__ - an easy to use D-Bus debugger * `GNOME Music `__ - a music player for GNOME * `GNOME Tweak Tool `__ - a tool to customize advanced GNOME 3 options * `Gramps `__ - a genealogy program * `Lollypop `__ - a modern music player * `Meld `__ - a visual diff and merge tool * `MyPaint `__ - a nimble, distraction-free, and easy tool for digital painters * `Orca `__ - a flexible and extensible screen reader * `Pithos `__ - a Pandora Radio client * `Pitivi `__ - a free and open source video editor * `Quod Libet `__ - a music library manager / player * `Transmageddon `__ - a video transcoder The following applications or libraries use PyGObject for optional features, such as plugins or as optional backends: * `beets `__ - a music library manager and MusicBrainz tagger * `gedit `_- a GNOME text editor * `matplotlib `__ - a python 2D plotting library * `Totem `__ - a video player for GNOME