Author: Christoph Reiter


        PGI - Pure Python GObject Introspection Bindings

GObject Introspection bindings written in pure Python using ctypes_
and cffi_ (optional). API compatible with PyGObject_.


**License:** LGPL 2.1+


- CPython_ 2.7 or 3.3+ or PyPy_ 1.9
- libgirepository_ 1.0
- cffi_ 0.6+ (optional)
- cairocffi_ 0.4+ (optional, for cairo support)

**Development Status:**

See the 'examples' directory for working examples.
Anything else will probably not work.

.. _ctypes:
.. _cffi:
.. _cairocffi:
.. _PyGObject:
.. _libgirepository:
.. _CPython:
.. _PyPy:



    from pgi.repository import Gtk, GObject

or (preferred)


    import pgi
    from gi.repository import Gtk, GObject

Search paths

Typelibs will be loaded from paths in the environment variable
`GI_TYPELIB_PATH` and `/usr/lib/girepository-1.0/`.

Shared libraries from paths in `LD_LIBRARY_PATH` and the default system
search paths (see dlopen(3)).


PGI docs:

Autogenerated GI docs:


.. image::

- `./ test` will run unit tests using PGI and PyGObject
- `./ test --pgi-only` to skip PyGObject tests
- `./ test --filter=StructTest` to run tests which include
  `StructTest` (regexp)

`./tests/libs/` includes additional libraries that will be used for testing
if present. Call `make` in `./tests/libs/` to build them.