Stellar Python SDK
py-stellar-base is a Python library for communicating with a Stellar Horizon server and Stellar RPC server. It is used for building Stellar apps on Python. It supports Python 3.10+ as well as PyPy 3.11.
It provides:
- a networking layer API for Horizon endpoints.
- a networking layer API for Stellar RPC server methods.
- facilities for building and signing transactions, for communicating with a Stellar Horizon and Stellar 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 --upgrade stellar-sdk
If you need to use asynchronous, please use the following command to install the required dependencies.
pip install --upgrade stellar-sdk[aiohttp]
If you need to Shamir backup support, please use the following command to install the required dependencies.
pip install --upgrade stellar-sdk[shamir]
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)
stellar-contract-bindings
stellar-contract-bindings allows you to generate Python bindings for Stellar Soroban smart contracts, it makes calling Stellar Soroban contracts easier. click here for more information.
stellar-model
stellar-model allows you to parse the JSON returned by Stellar Horizon into the Python models, click here for more information.
Contributing
Contributions are welcome! See CONTRIBUTING.md for more details.
Links
- Document: https://stellar-sdk.readthedocs.io
- Code: https://github.com/StellarCN/py-stellar-base
- 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!
Release files for stellar-sdk 16.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| stellar_sdk-16.1.0.tar.gz | 426.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| stellar_sdk-16.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.4 MB
Release files / stellar_sdk-16.1.0.tar.gz
| Download URL | stellar_sdk-16.1.0.tar.gz |
|---|---|
| Size | 426.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
68394217692ec95c91e776701b576c7ee7ad0ce49ceedfa8f14e00d49376d469
|
|
BLAKE2b-256 checksum How to use checksums |
571cd402dbeb6a96d13e91fa14af0d27355fd49350158eaa0f6db1db5d6d0975
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.9 {"installer":{"name":"uv","version":"0.12.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / stellar_sdk-16.1.0-py3-none-any.whl
| Download URL | stellar_sdk-16.1.0-py3-none-any.whl |
|---|---|
| Size | 989.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cabeca39762ba247c0f9b5d5e2be1e849c81f6bf0cb3932a9633955732341d6e
|
|
BLAKE2b-256 checksum How to use checksums |
e59e14ec3368b8d4c7f52631a35ba6e1792de373bb2904aec33274fac53a5d4f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.9 {"installer":{"name":"uv","version":"0.12.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|