The Python Stellar SDK library provides APIs to build transactions and connect to Horizon.
Project description
py-stellar-base is a Python library for communicating with a Stellar Horizon server and Soroban-RPC server. It is used for building Stellar apps on Python. It supports Python 3.7+ as well as PyPy 3.7+.
It provides:
a networking layer API for Horizon endpoints.
a networking layer API for Soroban-RPC server methods.
facilities for building and signing transactions, for communicating with a Stellar Horizon and Soroban-RPC instance, and for submitting transactions or querying network history.
Documentation
py-stellar-base’s documentation can be found at https://stellar-sdk.readthedocs.io.
Installing
pip install stellar-sdk==9.0.0a2
If you need to use asynchronous, please use the following command to install the required dependencies.
pip install stellar-sdk[aiohttp]==9.0.0a2
We follow Semantic Versioning 2.0.0, and I strongly recommend that you specify its major version number in the dependency file to avoid the unknown effects of breaking changes.
A Simple Example
You can find more examples here.
# Alice pay 10.25 XLM to Bob
from stellar_sdk import Asset, Server, Keypair, TransactionBuilder, Network
alice_keypair = Keypair.from_secret("SBFZCHU5645DOKRWYBXVOXY2ELGJKFRX6VGGPRYUWHQ7PMXXJNDZFMKD")
bob_address = "GA7YNBW5CBTJZ3ZZOWX3ZNBKD6OE7A7IHUQVWMY62W2ZBG2SGZVOOPVH"
server = Server("https://horizon-testnet.stellar.org")
alice_account = server.load_account(alice_keypair.public_key)
base_fee = 100
transaction = (
TransactionBuilder(
source_account=alice_account,
network_passphrase=Network.TESTNET_NETWORK_PASSPHRASE,
base_fee=base_fee,
)
.add_text_memo("Hello, Stellar!")
.append_payment_op(bob_address, Asset.native(), "10.25")
.set_timeout(30)
.build()
)
transaction.sign(alice_keypair)
response = server.submit_transaction(transaction)
print(response)
Soroban support
As Soroban is still under active development, I have not merged it into the main branch. You can obtain support for it in the soroban branch, but please note that there may be breaking updates at any time before the stable release.
stellar-model
stellar-model allows you to parse the JSON returned by Stellar Horizon into the Python models, click here for more information.
Links
Document: https://stellar-sdk.readthedocs.io
Examples: https://github.com/StellarCN/py-stellar-base/tree/main/examples
Issue tracker: https://github.com/StellarCN/py-stellar-base/issues
License: Apache License 2.0
Releases: https://pypi.org/project/stellar-sdk/
Thank you to all the people who have already contributed to py-stellar-base!
Project details
Release history Release notifications | RSS feed
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
Hashes for stellar_sdk-9.0.0a2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fe20c93a77206a94f67cc46c0bbb17d3381c1f4994318d4e610c664d65cc6d78 |
|
MD5 | 4e3f5c692e2af27ba6c48d6fb3750707 |
|
BLAKE2b-256 | 14907eeb50abf76a9bda440846101e99265ad41cb305989aff88ad7e004b7a5f |