Client & XDR SDKs
Client and XDR SDKs are used by applications to interact with the network.
For SDKs for building smart contracts, see Contract SDKs.
The JavaScript and Go SDKs, and some Rust libraries, are maintained by SDF. The rest of the SDKs are maintained by dedicated community developers. All SDKs are open-source; file a GitHub issue or pull request in the specific SDK repository if you have questions or suggestions.
Each SDK has its own source code and documentation. Learn how to use a specific SDK by referring to the documentation.
JavaScript SDK
JavaScript SDK | Docs | NPM
stellar-sdk
is the JavaScript library for communicating with Stellar RPC and Horizon. It supports building transactions on the Stellar network. It is used for building Stellar apps either in the browser or a Node.js environment.
It provides:
- A networking layer API for Stellar RPC methods and the Horizon API.
- Facilities for building and signing transactions, for communicating with an RPC instance, for communicating with a Horizon instance, and for submitting transactions or querying network state.
Python SDK
Python SDK | Docs | Examples
py-stellar-base
is a Python library for communicating with a Stellar Horizon server. It is used for building Stellar apps on Python. It supports Python 3.7+ as well as PyPy 3.7+.
This SDK is maintained by a dedicated community developer.
It provides:
- A networking layer API for Horizon endpoints.
- Facilities for building and signing transactions, for communicating with a Stellar Horizon instance, and for submitting transactions or querying network history.
Rust
Functionality for interacting with Stellar data can be found in the following Rust crates:
-
Provides XDR encode/decode and the reference implementation of XDR-JSON.
-
Provides Stellar Strkey (Address) SEP-23 encoding/decoding.
iOS SDK
iOS SDK | Docs | Smart Contract Docs
The stellar-ios-mac-sdk
is an open source Stellar SDK for iOS & Mac. It provides APIs to build transactions and connect to Horizon. It also provides functionality to deploy and invoke Soroban smart contracts and communicates with the Stellar RPC Server.
The iOS SDK is maintained by dedicated community developer, Soneso.
Flutter SDK
The stellar-flutter-sdk
is an open source Stellar SDK for Flutter developers. It provides APIs to build transactions and connect to Horizon. It also provides functionality to deploy and invoke Soroban smart contracts and communicates with the Stellar RPC Server.
The Flutter Stellar SDK is maintained by dedicated community developer, Soneso.
PHP SDK
The stellar-php-sdk
is an open source Stellar SDK for PHP developers. It provides APIs to build transactions and connect to Horizon. It also provides functionality to deploy and invoke Soroban smart contracts and communicates with the Stellar RPC Server.
The PHP Stellar SDK is maintained by dedicated community developer, Soneso.
Elixir SDK
Soroban Elixir SDK & Docs| Stellar Elixir SDK & Docs | Examples
This SDK is maintained by dedicated community developers, kommitters Open Source.
Java SDK
java-stellar-sdk
provides APIs to build transactions and connect to Horizon and also provides functionality to deploy and invoke Soroban smart contracts and communicates with the Stellar RPC Server.
Go
This SDK is split up into separate packages, all of which you can find in the Go monorepo README. The two key libraries for interacting with Horizon are txnbuild
, which enables the construction, signing, and encoding of Stellar transactions, and horizonclient
, which provides a web client for interfacing with Horizon server REST endpoints to retrieve ledger information and submit transactions built with txnbuild
.
Ruby
Ruby SDK | Base Source | SDK Source | Docs | Base Examples | SDK Examples