Documentation
Everything you need to ship.
Start with the concepts, follow a guide for your stack, and dive into the API when you're ready. Search-as-you-type across the entire site.
Getting started
Five-minute setup
Spin up a sandbox, install the SDK, and place your first stake on testnet.
Concepts
How RIVR works
stRIVR, the redemption queue, validator routing, and the burn mechanism.
API reference
All endpoints
Contract methods, REST endpoints, GraphQL schema, and webhook payloads.
Getting started
1. Install the SDK
Every guide assumes you've installed a RIVR client. Pick the language that matches your stack — they're all functionally equivalent.
npm install @rivr/sdk
# or
cargo add rivr
# or
pip install rivr
2. Connect to testnet
Use the testnet RPC for development. Faucet RIVR is unlimited; mint as much as you need.
const rivr = new RivrClient({
rpc: "https://testnet.rivr.dev",
});
const balance = await rivr.balances.of(wallet);
console.log(balance);
3. Place your first stake
A stake transaction routes RIVR to the validator set and mints stRIVR to your wallet. The exchange rate updates each block.
const tx = await rivr.staking.stake({
amount: 100n * 10n ** 18n,
receiver: wallet.address,
});
await tx.wait();
Core concepts
stRIVR
A liquid staking derivative that accrues value over time. Always backed 1:1 by underlying RIVR plus rewards.
Redemption queue
7-day unbonding period during which underlying RIVR is sequentially released back from validators.
Validator routing
Deposits are split across the active validator set proportional to performance, capped at 4% per operator.
Fee-to-burn
15% of all protocol fees are converted to RIVR on the open market and sent to a verifiable burn address.
Cross-chain settlement
Bridge transfers complete in ~1.7s via Orbit's threshold-signed light client attestations.
Governance timelock
Passed proposals are subject to a 48-hour delay before execution, giving the community a final review window.