pyobjc / Doc / index.txt

PyObjC documentation index

PyObjC is a bridge between Python and Objective-C.  It allows you to write
Python scripts that use and extend existing Objective-C class libraries,
most importantly the `Cocoa libraries`_ by `Apple`_.

More information can be found on `our website <>`_

.. _`Apple`:

.. _`Cocoa libraries`:

.. _`our website <>`:

General user documentation

The following documents are useful when you're interested in developing
Cocoa applications in Python.

* `An introduction to PyObjC`_

  An overview of the PyObjC package and how to use it.  Read this before
  you start using the package, it will help you to avoid some surprises.

* `Notes on supported APIs and classes on Mac OS X`_

  This document lists the methods and classes that are not fully supported,
  or supported in an 'unexpected' way.

* `How to wrap an Objective-C class library`_

  This explains how you can provide a python wrapper for an existing 
  Objective-C class library.


* `Creating your first PyObjC application (tutorial)`_

  This tutorial guides you though creating a Python based Cocoa application.

* `Adding Python code to an existing Objective-C application`_

  This tutorial teaches you how to extend you existing Objective-C based
  Cocoa application using Python.


The source tree includes a number of examples, see the `list of examples`__ for
more information.

.. __: ../Examples/00ReadMe.html

Technical documentation

These documents are only relevant if you want to modify PyObjC, not if
you want to write Cocoa programs in Python.

* `Coding style for PyObjC`_

  Rules for formatting code and documentation.

* `Structure of the PyObjC package`_

  An overview of the implementation of PyObjC.

* `Xcode Python templates`_

  Describes the PyObjC Xcode templates.

.. _`Xcode Python templates`: Xcode-Templates.html

.. _`An introduction to PyObjC`: intro.html

.. _`Coding style for PyObjC`: coding-style.html

.. _`Using LibFFI with PyObjC`: libffi.html

.. _`PyObjC Architecture`: architecture.html

.. _`Structure of the PyObjC package`: structure.html

.. _`How to wrap an Objective-C class library`: wrapping.html

.. _`Creating your first PyObjC application (tutorial)`: tutorial/tutorial.html

.. _`Adding Python code to an existing Objective-C application`: tutorial_embed/extending_objc_with_python.html

.. _`Notes on supported APIs and classes on Mac OS X`: api-notes-macosx.html
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.