Warning
This is experimental software and is provided on an "as is" and "as available" basis. We do not give any warranties and will not be liable for any losses incurred through any use of this code base.
OpenZeppelin Stellar Soroban Contracts is a collection of contracts for the Stellar network. Our goal is to bring Web3 standards under the OpenZeppelin quality by providing a set of high-quality, battle-tested contracts that can be used to build decentralized applications on the Stellar network.
contracts/
: Source codetoken/
: Various token types (fungible, non-fungible, etc.)utils/
: Utilities for token types (pausable, etc.)
examples/
: Example contractsdocs/
: Documentationaudits/
: Audit reports
Stellar smart contracts are programs written in Rust leveraging the Soroban SDK. Please, follow the setup process as outlined in the Stellar documentation.
The library has not been published yet to crates.io
, and this will be the case until we reach a stable version. However, one can specify a git dependency in a Cargo.toml
, like so:
[dependencies]
openzeppelin-pausable = { git = "https://github.com/OpenZeppelin/stellar-contracts" }
openzeppelin-fungible-token = { git = "https://github.com/OpenZeppelin/stellar-contracts" }
We recommend pinning to a specific version, because rapid iterations are expected as the library is in an active development phase.
For security concerns, please refer to our Security Policy.
OpenZeppelin Stellar Soroban Contracts are released under the MIT LICENSE.
We try to follow the idiomatic Rust style, and enforce clippy
and cargo fmt
checks in CI.
The detailed rules are defined in the .rustfmt.toml and .clippy.toml files.
We welcome contributions from the community!
If you are looking for a good place to start, find a good first issue here.
You can open an issue for a bug report, core implementation, or feature request.
You can find more details in our Contributing guide, and please read our Code of Conduct.