Skip to main content

IOTA API library for Python

Project description

https://travis-ci.org/iotaledger/iota.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.

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

Dependencies

PyOTA is compatible with Python 3.7 and 3.6.

Install PyOTA

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]

Optional Local Pow

To perform proof-of-work locally without relying on a node, you can install an extension module called PyOTA-PoW .

Specifiy the local_pow=True argument when creating an api instance, that will redirect all attach_to_tangle API calls to an interface function in the pow package.

To install this extension, use the following command:

pip install pyota[pow]

Alternativley you can take a look on the repository Ccurl.interface.py to install Pyota-PoW. Follow the steps depicted in the repo’s README file.

Installing from Source

  1. Create virtualenv (recommended, but not required).

  2. git clone https://github.com/iotaledger/iota.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 -p argument. This 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 tox command:

pip install -e .[test-runner]
tox -v -p all

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]
  2. Switch to the docs directory:

    cd docs
  3. Build the documentation:

    make html

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

PyOTA-3.1.0b1.tar.gz (5.6 MB view details)

Uploaded Source

Built Distribution

PyOTA-3.1.0b1-py2.py3-none-any.whl (130.0 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file PyOTA-3.1.0b1.tar.gz.

File metadata

  • Download URL: PyOTA-3.1.0b1.tar.gz
  • Upload date:
  • Size: 5.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.7.1

File hashes

Hashes for PyOTA-3.1.0b1.tar.gz
Algorithm Hash digest
SHA256 bde0bc03fcfb60f56a2829526988bebc6f3877d6304f6e4ce3720a8e071b935a
MD5 c2f47bc46fc9b8c12c2bfca3e839e318
BLAKE2b-256 ac79125c3ba329cbec9a1d5410011e557cdd982e69608e31b591cdc8ea629133

See more details on using hashes here.

File details

Details for the file PyOTA-3.1.0b1-py2.py3-none-any.whl.

File metadata

  • Download URL: PyOTA-3.1.0b1-py2.py3-none-any.whl
  • Upload date:
  • Size: 130.0 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.7.1

File hashes

Hashes for PyOTA-3.1.0b1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 55fd217588ad2e86afcfcbdebcaeaeefb75f4cfc727319b754bce59823658b55
MD5 69a87932a3a6072111412abf2d0dedb7
BLAKE2b-256 c35c30c2a310bace896319d0cd4694d3c911332b0a85ba9b67c8236f5502ab57

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page