Soroban DevKit (sdkt)
Soroban DevKit is a unified toolkit for Stellar/Soroban development, providing utilities for inspecting contracts, decoding XDR, analyzing storage TTLs, and introspecting network state (transactions, events, and accounts).
Project Overview
sdkt serves as the swiss army knife for Soroban developers, unifying otherwise disconnected tools into a single robust CLI. It communicates natively via Soroban RPC and handles XDR decoding transparently.
Installation
Ensure you have Rust installed (Edition 2021 required), then build from source:
Quick Start
Check a smart contract's raw storage limits:
CLI Commands
1. XDR Decoding
Decode a payload into pretty output:
2. Contract Inspection
Inspect contract details (returns WASM hash and storage entries count):
3. Storage TTL Check
Check remaining storage TTL ledgers for a given contract:
4. Transaction Inspection
View detailed network transaction status:
5. Event Explorer
Filter and view emitted contract events for auditing:
6. Account Inspection
Quick diagnostic of a Stellar network account:
JSON Output Example
Most commands support --format json for integration into CI or scripts:
Workspace Structure
The project is split into independent workspace crates:
sdkt-cli: The command line interface.sdkt-core: Common configurations and output formats.sdkt-rpc: Soroban RPC integration layer.sdkt-storage: Storage analysis routines.sdkt-xdr: XDR encoding/decoding utilities based on stellar-xdr.
Development
Testing
We utilize assert_cmd for CLI integration tests stored under crates/sdkt-cli/tests/. Run them via cargo test --workspace.
Roadmap
- Improve robust parsing of raw ContractEvent XDR values.
- Integrate full Horizon endpoints for richer Account metadata.
- Implement storage estimate commands.