Skip to content

A useful tool for sending cosmos transactions

License

Notifications You must be signed in to change notification settings

FunctionX/fx-py-sdk

Repository files navigation

FunctionX Python SDK

PyPI version

Install

pip install fx-py-sdk

Use

from fxsdk.client.grpc import Client
from fxsdk.wallet.builder import TxBuilder
from fxsdk.x.cosmos.base.v1beta1.coin_pb2 import Coin

if __name__ == '__main__':
    grpc_cli = Client(url='127.0.0.1:9090')
    mnemonic = 'test test test test test test test test test test test junk'
    prefix = 'fx'
    
    tx_builder = TxBuilder.from_mnemonic(mnemonic=mnemonic, prefix=prefix)
    to = tx_builder.from_address().to_string()
    amount = [Coin(amount='100', denom='FX')]
    tx_response = grpc_cli.bank_send(tx_builder, to, amount)
    print(tx_response)

Development

1. Clone the code to local

git clone https://github.com/functionx/fx-py-sdk.git

cd fx-py-sdk

2. Build the Python virtual environment for the current project

  • Create the virtual directory venv
python -m venv venv
  • Activating the Virtual Environment
source ./venv/bin/activate

Windows: venv\Scripts\activate

3. Installation Project Dependence

pip install -r requirements.txt

4. Compile Proto files as Python files

If does not have execution permission, run 'chmod +x ./gen-proto.sh`

# Pull external code
git submodule update --init --recursive --remote

./gen-proto.sh

5. Build Project

python -m build

License

Apache License 2.0