<commit_before>Installation
============

Bonobo is `available on PyPI <https://pypi.python.org/pypi/bonobo>`_, and it's the easiest solution to get started.

.. code-block:: shell-session

    $ pip install bonobo

Install from source
:::::::::::::::::::

If you want to install an unreleased version, you can use git urls with pip. This is useful when using bonobo as a
dependency of your code and you want to try a forked version of bonobo with your software. You can use the git+http
string in your `requirements.txt` file. However, the best option for development on bonobo directly is not this one,
but editable installs (see below).

.. code-block:: shell-session

    $ pip install git+https://github.com/python-bonobo/bonobo.git@0.3#egg=bonobo<commit_msg>Update install.rst<commit_after>Installation
============

Create an ETL project
:::::::::::::::::::::

If you only want to use Bonobo to code ETLs, your easiest option to get started is to use our
`cookiecutter template <https://github.com/python-bonobo/cookiecutter-bonobo>`_.

Install from PyPI
:::::::::::::::::

You can also install it directly from the `Python Package Index <https://pypi.python.org/pypi/bonobo>`_.

.. code-block:: shell-session

    $ pip install bonobo

Install from source
:::::::::::::::::::

If you want to install an unreleased version, you can use git urls with pip. This is useful when using bonobo as a
dependency of your code and you want to try a forked version of bonobo with your software. You can use the git+http
string in your `requirements.txt` file. However, the best option for development on bonobo directly is not this one,
but editable installs (see below).

.. code-block:: shell-session

    $ pip install git+https://github.com/python-bonobo/bonobo.git@0.3#egg=bonobo
{'fraction_non_alphanumeric': 0.12752808988764044, 'fraction_numerical': 0.0022471910112359553, 'mean_word_length': 4.364457831325301, 'pattern_counts': {'":': 0, '<': 6, '<?xml version=': 0, '>': 6, 'https://': 5, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5853035', 'n_tokens_mistral': 525, 'n_tokens_neox': 486, 'n_words': 220}