Crates.io | hello-soroban-kit |
lib.rs | hello-soroban-kit |
version | 0.1.11 |
source | src |
created_at | 2023-12-19 05:39:03.799462 |
updated_at | 2024-02-28 17:44:46.276409 |
description | Demo soroban smart contract for soroban-kit. |
homepage | |
repository | https://github.com/fredericrezeau/soroban-kit |
max_upload_size | |
id | 1073958 |
size | 47,241 |
This crate is part of soroban-kit
: Github | crates.io.
hello-soroban-kit
is a Soroban smart contract demo showcasing the use of all features in soroban-kit
including state-machine
, commitment-scheme
, circuit-breaker
, oracle
and storage
.
soroban-kit
is designed for compactness, focusing on slim constructs. It is built on Rust's dependency-free core
library and the soroban-sdk
. All modules are feature-gated, offering you the flexibility to compile only the components essential for your project.
Take a look at Litemint Smart Contracts to see an integration of the library in real-world smart contracts.
Building the Contract:
soroban contract build
Running Tests:
cargo test -- --nocapture
Deploying to Testnet:
soroban contract deploy --wasm target/wasm32-unknown-unknown/release/hello_soroban_kit.wasm --rpc-url https://soroban-testnet.stellar.org:443 --network-passphrase "Test SDF Network ; September 2015" --source ACCOUNT
output > CONTRACT_ID
Invoking the contract:
Just say hello with storage type-safety!
soroban contract invoke --id CONTRACT_ID --source ACCOUNT --rpc-url https://soroban-testnet.stellar.org:443 --network-passphrase "Test SDF Network ; September 2015" -- hello --newcomer TESTER
output > ["Hello","TESTER"]
Play rock paper scissors!
soroban contract invoke --id CONTRACT_ID --source ACCOUNT --rpc-url https://soroban-testnet.stellar.org:443 --network-passphrase "Test SDF Network ; September 2015" -- rock_paper_scissors
output > "Success"
Flip the switch on a circuit!
soroban contract invoke --id CONTRACT_ID --source ACCOUNT --rpc-url https://soroban-testnet.stellar.org:443 --network-passphrase "Test SDF Network ; September 2015" -- circuit_breaker
output > "Success"
Check out lib.rs and test.rs for detailed integration examples.
Contributions are welcome! If you have a suggestion that would make this better, please fork the repo and create a pull request.
soroban-kit
is licensed under the MIT License. See LICENSE for more details.
For inquiries or collaborations:
Fred Kyung-jin Rezeau - @FredericRezeau