Skip to content

InjectiveLabs/sdk-python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

398e523 · Nov 20, 2024
Aug 6, 2024
Sep 19, 2023
Nov 19, 2024
Nov 20, 2024
Nov 19, 2024
Feb 27, 2024
Sep 19, 2023
Sep 19, 2023
Nov 14, 2024
Sep 19, 2023
Jan 19, 2022
Jul 29, 2024
Sep 19, 2023
Sep 7, 2023
Sep 7, 2023
May 7, 2024
Nov 19, 2024
Sep 19, 2023
Nov 20, 2024
Sep 19, 2023
Nov 20, 2024
Jun 6, 2023

Repository files navigation

Injective Python SDK

codecov

Dependencies

Ubuntu

sudo apt install python3.X-dev autoconf automake build-essential libffi-dev libtool pkg-config

Fedora

sudo dnf install python3-devel autoconf automake gcc gcc-c++ libffi-devel libtool make pkgconfig

macOS

brew install autoconf automake libtool bufbuild/buf/buf

Quick Start

Installation

pip install injective-py

Usage

Requires Python 3.9+ Please install poetry following the steps described in the documentation

Examples

$ poetry install

# connecting to Injective Exchange API
# and listening for new orders from a specific spot market
$ poetry run python examples/exchange_client/spot_exchange_rpc/8_StreamOrders.py

# sending a msg with bank transfer
# signs and posts a transaction to the Injective Chain
$ poetry run python examples/chain_client/1_MsgSend.py

Upgrade pip to the latest version, if you see these warnings:

WARNING: Value for scheme.platlib does not match. Please report this to <https://github.com/pypa/pip/issues/10151>
WARNING: Additional context:   user = True   home = None   root = None   prefix = None

Development

  1. Generate proto binding & build
make gen
poetry build
  1. Install pkg
# from local build
pip uninstall injective-py
pip install injective-py --no-index --find-links /path/to/injective/sdk-python/dist

# from pypi
pip uninstall injective-py
pip install injective-py
  1. Fetch latest denom config
poetry run python pyinjective/utils/fetch_metadata.py

Note that the sync client has been deprecated as of April 18, 2022. If you are using the sync client please make sure to transition to the async client, for more information read here

  1. Run all unit tests in a development environment
poetry run pytest -v

License

Copyright © 2021 - 2022 Injective Labs Inc. (https://injectivelabs.org/)

Originally released by Injective Labs Inc. under:
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/