Skip to main content

Python SDK for interacting with comdex node

Project description

comdexpy

The comdexpy is a comprehensive Python library designed to provide developers with easy access to the Comdex blockchain and its ecosystem. This library enables developers to interact with the blockchain, query data, and perform various operations within the Comdex ecosystem.

Installation

  pip3 install comdexpy

Usage

Creating a connection

import asyncio
from comdexpy.client import Client

async def get_connection():
    grpc_url = "comdex-grpc.lavenderfive.com"
    return Client.from_endpoint(grpc_url, 443)

async def main():
    connection = await get_connection()
    connection.close()

if __name__ == "__main__":
    asyncio.run(main())

Querying on comdex node using connection

import asyncio
from comdexpy.client import Client
from comdexpy.queries.comdex.liquidity import Query as LiquidityQueries

async def get_connection():
    grpc_url = "comdex-grpc.lavenderfive.com"
    return Client.from_endpoint(grpc_url, 443)

async def sample_query(channel):
    liquidity = LiquidityQueries(channel)
    params = await liquidity.get_generic_params(1)
    print(params.to_dict())

async def main():
    connection = await get_connection()
    await sample_query(connection.channel())
    connection.close()

if __name__ == "__main__":
    asyncio.run(main())

Sending transaction on comdex node

import asyncio
from comdexpy.client import Client
from comdexpy.wallet import Wallet

from comdexpy.messages.cosmos.bank import MsgSend
from comdexpy.proto.cosmos.base.v1beta1 import Coin

from comdexpy.send_tx import SignAndBroadcastMessage

async def get_connection():
    grpc_url = "comdex-grpc.lavenderfive.com"
    return Client.from_endpoint(grpc_url, 443)

async def sample_tx(connection):
    wallet = Wallet.from_mnemonic("seeds here")
    sender = wallet.get_address().to_acc_bech32()
    msg_send = MsgSend(
        from_address=sender,
        to_address="comdex",
        amount=[Coin(amount="1000000", denom="ucmdx")],
    )
    response = await SignAndBroadcastMessage.send_tx(connection, wallet, msg_send)
    print(response)

async def main():
    connection = await get_connection()
    await sample_tx(connection)
    connection.close()


if __name__ == "__main__":
    asyncio.run(main())

Complete Usage

Documentation

You can read the documentation here.

Feedback

If you have any feedback, please reach out to us at https://forum.comdex.one/

License

This software is licensed under the GPL-3.0 license. See LICENSE for full disclosure.

GPLv3 License

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

comdexpy-0.5.tar.gz (157.3 kB view hashes)

Uploaded Source

Built Distribution

comdexpy-0.5-py3-none-any.whl (203.6 kB view hashes)

Uploaded Python 3

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