Contracts guides
Every guide, concept, and reference under the Contracts tab, grouped by what you're trying to do.
Build and ship a contract
- Deploy: Scaffold a Foundry project and deploy Counter to Stable testnet.
- Verify: Upload source to Stablescan so users can read and call your contract.
- Index events: Build a live event stream with ethers.js, plus historical backfill.
Call system modules
- Use system modules: Call Bank, Distribution, and Staking precompiles from Solidity or ethers.js.
- Track unbonding completions: Subscribe to the UnbondingCompleted event emitted via the StableSystem precompile.
Reference
- System modules reference: Precompile addresses and per-module ABI pointers.
- JSON-RPC API: Supported
eth_*,net_*,web3_*, anddebug_*methods.
Foundation concepts
- USDT0 behavior on Stable: Dual-role balance, reconciliation events, and contract design rules.
- Difference from Ethereum: Gas token, finality, priority tips, and EVM compatibility.

