PyOTA: The IOTA Python API Library
Clone or download
Latest commit 3f452a6 Jun 10, 2018

README.rst

https://travis-ci.org/iotaledger/iota.lib.py.svg?branch=master https://readthedocs.org/projects/pyota/badge/?version=latest

PyOTA

This is the official Python library for the IOTA Core.

It implements both the official API, as well as newly-proposed functionality (such as signing, bundles, utilities and conversion).

Join the Discussion

If you want to get involved in the community, need help with getting setup, have any issues related with the library or just want to discuss Blockchain, Distributed Ledgers and IoT with other people, feel free to join our Discord.

You can also ask questions on our dedicated forum.

If you encounter any issues while using PyOTA, please report them using the PyOTA Bug Tracker.

Dependencies

PyOTA is compatible with Python 3.6, 3.5 and 2.7.

Installation

To install the latest version:

pip install pyota

Optional C Extension

PyOTA has an optional C extension that improves the performance of its cryptography features significantly (speedups of 60x are common!).

To install this extension, use the following command:

pip install pyota[ccurl]

Installing from Source

  1. Create virtualenv (recommended, but not required).
  2. git clone https://github.com/iotaledger/iota.lib.py.git
  3. pip install -e .

Running Unit Tests

To run unit tests after installing from source:

python setup.py test

PyOTA is also compatible with tox, which will run the unit tests in different virtual environments (one for each supported version of Python).

To run the unit tests, it is recommended that you use the detox library. detox speeds up the tests by running them in parallel.

Install PyOTA with the test-runner extra to set up the necessary dependencies, and then you can run the tests with the detox command:

pip install -e .[test-runner]
detox -v

Documentation

PyOTA's documentation is available on ReadTheDocs.

If you are installing from source (see above), you can also build the documentation locally:

  1. Install extra dependencies (you only have to do this once):

    pip install '.[docs-builder]'
    

    Tip

    To install the CCurl extension and the documentation builder tools together, use the following command:

    pip install '.[ccurl,docs-builder]'
    
  2. Switch to the docs directory:

    cd docs
    
  3. Build the documentation:

    make html