rubicon-objc icon indicating copy to clipboard operation
rubicon-objc copied to clipboard

A bridge interface between Python and Objective-C.

.. image:: https://beeware.org/project/projects/bridges/rubicon/rubicon.png :width: 72px :target: https://beeware.org/rubicon

Rubicon-ObjC

.. image:: https://img.shields.io/pypi/pyversions/rubicon-objc.svg :target: https://pypi.python.org/pypi/rubicon-objc :alt: Python Versions

.. image:: https://img.shields.io/pypi/v/rubicon-objc.svg :target: https://pypi.python.org/pypi/rubicon-objc :alt: Project Version

.. image:: https://img.shields.io/pypi/status/rubicon-objc.svg :target: https://pypi.python.org/pypi/rubicon-objc :alt: Project status

.. image:: https://img.shields.io/pypi/l/rubicon-objc.svg :target: https://github.com/beeware/rubicon-objc/blob/master/LICENSE :alt: License

.. image:: https://github.com/beeware/rubicon-objc/workflows/CI/badge.svg?branch=master :target: https://github.com/beeware/rubicon-objc/actions :alt: Build Status

.. image:: https://img.shields.io/discord/836455665257021440?label=Discord%20Chat&logo=discord&style=plastic :target: https://beeware.org/bee/chat/ :alt: Discord server

Rubicon-ObjC is a bridge between Objective-C and Python. It enables you to:

  • Use Python to instantiate objects defined in Objective-C,
  • Use Python to invoke methods on objects defined in Objective-C, and
  • Subclass and extend Objective-C classes in Python.

It also includes wrappers of the some key data types from the Foundation framework (e.g., NSString).

Tutorial

Want to jump in and get started? We have a hands-on tutorial for beginners <https://rubicon-objc.readthedocs.io/en/latest/tutorial/index.html>__.

How-to guides

Looking for guidance on how to solve a specific problems? We have how-to guides and recipes <https://rubicon-objc.readthedocs.io/en/latest/how-to/index.html>__ for common problems and tasks, including how to contribute.

Reference

Just want the raw technical details? Here's our Technical reference <https://rubicon-objc.readthedocs.io/en/latest/reference/index.html>__.

Background

Looking for explanations and discussion of key topics and concepts? Our background <https://rubicon-objc.readthedocs.io/en/latest/background/index.html>__ guides may help.

Community

Rubicon is part of the BeeWare suite_. You can talk to the community through:

  • @pybeeware on Twitter <https://twitter.com/pybeeware>__

  • Discord <https://beeware.org/bee/chat/>__

  • The Rubicon-ObjC Github Discussions forum <https://github.com/beeware/rubicon-objc/discussions>__

Code of Conduct

The BeeWare community has a strict Code of Conduct_. All users and developers are expected to adhere to this code.

If you have any concerns about this code of conduct, or you wish to report a violation of this code, please contact the project founder Russell Keith- Magee.

Contributing

If you experience problems with this backend, log them on GitHub. If you want to contribute code, please fork the code and submit a pull request_.

.. _BeeWare suite: https://beeware.org .. _Read The Docs: https://rubicon-objc.readthedocs.org .. _Code of Conduct: https://beeware.org/community/behavior/ .. _log them on GitHub: https://github.com/beeware/rubicon-objc/issues .. _fork the code: https://github.com/beeware/rubicon-objc .. _submit a pull request: https://github.com/beeware/rubicon-objc/pulls