8000 GitHub - aleph-im/aleph-sdk-python: Python SDK library for the Aleph.im network · GitHub
[go: up one dir, main page]

Skip to content
  • Pricing
  • Sign up

    About

    Python SDK library for the Aleph.im network

    Resources

    Stars

    4 stars

    Watchers

    4 watching

    Forks

    Repository files navigation

    aleph-sdk-python

    Python SDK for the Aleph.im network, next generation network of decentralized big data applications.

    Development follows the Aleph Whitepaper.

    Documentation

    The latest documentation, albeit incomplete, is available at https://docs.aleph.im/libraries/python-sdk/.

    For the full documentation, please refer to the docstrings in the source code.

    Requirements

    Linux

    Some cryptographic functionalities use curve secp256k1 and require installing libsecp256k1.

    $ apt-get install -y python3-pip libsecp256k1-dev

    Using some chains may also require installing libgmp3-dev.

    macOs

    This project does not support Python 3.12 on macOS. Please use Python 3.11 instead.

    $ brew install secp256k1

    Installation

    Using pip and PyPI:

    $ pip install aleph-sdk-python

    Additional dependencies

    Some functionalities require additional dependencies. They can be installed like this:

    $ pip install aleph-sdk-python[solana, dns]

    The following extra dependencies are available:

    • solana for Solana accounts and signatures
    • cosmos for Substrate/Cosmos accounts and signatures
    • nuls2 for NULS2 accounts and signatures
    • polkadot for Polkadot accounts and signatures
    • ledger for Ledger hardware wallet support, see Usage with LedgerHQ hardware
    • mqtt for MQTT- 7C75 related functionalities, see examples/mqtt.py
    • docs for building the documentation, see Documentation
    • dns for DNS-related functionalities
    • all installs all extra dependencies

    Installation for development

    Setup a virtual environment using hatch:

    $ hatch shell

    Then install the SDK from source with all extra dependencies:

    $ pip install -e .[all]

    Running tests & Hatch scripts

    You can use the test env defined for hatch to run the tests:

    $ hatch run testing:run

    See hatch env show for more information about all the environments and their scripts.

    Generating the documentation [DEPRECATED]

    The documentation is built using Sphinx.

    To build the documentation, install the SDK with the docs extra dependencies:

    $ pip install -e .[docs]

    Then build the documentation:

    $ cd docs
    $ make html

    Usage with LedgerHQ hardware

    The SDK supports signatures using app-ethereum, the Ethereum app for the Ledger hardware wallets.

    This has been tested successfully on Linux (amd64). Let us know if it works for you on other operating systems.

    Using a Ledger device on Linux requires root access or the setup of udev rules.

    Unlocking the device is required before using the relevant SDK functions.

    Debian / Ubuntu

    Install ledger-wallets-udev.

    sudo apt-get install ledger-wallets-udev

    On NixOS

    Configure hardware.ledger.enable = true.

    Other Linux systems

    See https://github.com/LedgerHQ/udev-rules

    About

    Python SDK library for the Aleph.im network

    Resources

    Stars

    4 stars

    Watchers

    4 watching

    Forks

    Releases

    Packages

    Used by

    Contributors

    Languages

    0