pyCosmicWrap is a Cosmos API/RPC python Wrapper by ChihuahuaChain
Project description
pyCosmicWrap 🌯
A python3 wrapper around Cosmos API/RPC brought to you by ChihuahuaChain
Info
pyCosmicWrap 🌯 makes it easier to develop python applications on the Cosmos Ecosystem. It currently has been tested with ChihuahuaChain and the first stable release will have it production-ready for almost every Cosmos Blockchain
Todo
There's a lot more to add, here's our plan, feel free to contribute with code improvements, testing and feel free to push a PR to help us to improve pyCosmicWrap and to make it the default choice for any Cosmos Ecosystem python developer. The next big step will be adding Mospy by ctrl-Felix in order to be able to create and broadcast transactions as well.
- Wrap main default API endpoints
- Wrap main RPC endpoints
- Published on PyPi
- Add Osmosis specific endpoints
- Integrate Mospy by ctrl-Felix
Installation
You can install this module with
python -m pip install pycosmicwrap
API/LCD Queries
Bank Queries
query_balances(address)
queries the balance of all coins for a single accountquery_balances_by_denom(address, denom)
queries the balance of a single coin for a single account.query_supply()
queries the total supply of all coins.query_supply_by_denom(denom)
queries the supply of a single coin.
Distribution Queries
query_community_pool()
queries the community pool coinsquery_distribution_params()
queries the blockchain distribution parametersquery_rewards(delegator)
queries the total rewards accrued by a each validatorquery_rewards_by_validator(delegator, validator)
queries the total rewards accrued by a delegation on a given validatorquery_delegator_validators(delegator)
queries the validators of a delegatorquery_withdraw_address(delegator)
queries withdraw address of a delegatorquery_commission(validator)
queries accumulated commission for a validatorquery_outstanding_rewards(validator)
queries rewards of a validator address
Governance Queries
query_proposals()
queries all the proposalsquery_proposal_by_id(id)
queries a specific proposal by a given id (accepts both string or integers)query_tally(id)
queries tally of a proposal by a given id (accepts both string or integers)query_votes(id)
queries votes for a specific proposal by a given id (accepts both string or integers)query_votes_by_address(id, address)
queries votes for a specific proposal from a given address (accepts both string or integers)
Slashing Queries
query_slashing_params()
queries slashing parameters
Staking Queries
query_staking_params()
queries staking parametersquery_staking_pool()
queries staking poolquery_delegations_by_address(delegator)
queries all the delegations of a given addressquery_redelegations_by_address(delegator)
queries all the redelegations of a given addressquery_unbonding_by_address(delegator)
queries all the unbondings of a given addressquery_delegator_data(delegator)
queries delegator data of a given addressquery_delegator_data_by_validator(delegator, validator)
queries delegator data of a given address on a given validatorquery_all_validators()
queries all the validatorsquery_validator_by_address(validator)
queries data for a given validatorquery_delegators(validator)
queries all the delegators for a given validatorquery_delegators_by_address(validator, delegator)
queries a given delegator's data for a given validatorquery_validator_unbonding_by_address)
queries a given delegator's unbonding data for a given validatorquery_unbonding_from(validator)
queries all the unbonding of a give validator
Mint Queries
query_mint_params()
queries mint parametersquery_annual_provisions()
queries annual provisionsquery_mint_params()
queries current inflation percentage
TX Queries
query_tx(tx_hash)
queries a given transaction hash
RPC Queries
query_abci_info()
queries abci infoquery_block(height)
queries a given block heightquery_block_results(height)
queries a given block results by its heightquery_commit(height)
queries a given commit by its heightquery_consensus_state()
queries consensus statequery_dump_consensus_state()
dumps consensus statequery_genesis()
queries the current genesisquery_net_info()
queries network infoquery_num_unconfirmed_txs()
queries the amount of unconfirmed txsquery_status()
queries the node status.
Examples
Initialize the module and print basic info
from pycosmicwrap import CosmicWrap
# create an object with rest api url, rpc url and denom as arguments
chihuahua = CosmicWrap(lcd='https://api.chihuahua.wtf',
rpc='https://rpc.chihuahua.wtf',
denom='uhuahua')
# Once the module is imported and the object is created we can start using
# the object to interact with the blockchain
# Let's define an address
my_address = 'chihuahua1z6rfp8wzsx87pwt3z73gf2a67d6tgmfrrlzy7p'
# Let's create a variable with your balance
my_address_balance = chihuahua.query_balance(my_address)
# or just print it out
print(my_address_balance)
# check all of your delegations
my_delegations = chihuahua.query_delegations_by_address(my_address)
# and print them out
print(my_delegations)
# check all of your staking rewards
print(chihuahua.query_rewards(my_address))
Donate
We don't seek for donations, but you can say Thank You for our work by delegating to our validators and by sharing this project on Twitter
License
ChihuahuaChain/pyCosmicWrap is licensed under the GNU General Public License v3.0
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
Built Distribution
File details
Details for the file pycosmicwrap-0.1.3.tar.gz
.
File metadata
- Download URL: pycosmicwrap-0.1.3.tar.gz
- Upload date:
- Size: 19.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c3ac2f49ac4edbd0d363be1a68558a4eeb0415f9e9597a05034d2da1aed8aadd |
|
MD5 | ac5dc3dd950d740bc489a053ba35dc8a |
|
BLAKE2b-256 | bd103483021b866796b80a5a17b5fa1ce60a9e1b4d3a660d5120248c3437f254 |
File details
Details for the file pycosmicwrap-0.1.3-py3-none-any.whl
.
File metadata
- Download URL: pycosmicwrap-0.1.3-py3-none-any.whl
- Upload date:
- Size: 17.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7bb281128089664b3df534c4a2f610ee71e255c88e6be67c392b0f7b41ece06c |
|
MD5 | 84fa93cdb1dc4bb18a3e6eca60065bd1 |
|
BLAKE2b-256 | 559d1d099acc30e750c7e03ab2318291b10dd6fb2a495163c06c0958083906ce |