Skip to main content

Hello World — Your First Transaction on Savitri

This tutorial takes you from zero to sending your first transaction on the Savitri testnet. Choose the path that matches your profile.

PathForTimePrerequisites
A. Browser WalletCrypto users2 minChrome/Brave
B. Mobile AppMobile users3 miniOS or Android
C. Desktop InstallerNon-technical users5 minWindows or macOS
D. Docker (Developer)Developers5 minDocker installed
E. Build from SourceRust developers15 minRust 1.82+

A. Browser Wallet

Time: 2 minutes

  1. Install the Savitri Wallet extension from the Chrome Web Store

  2. Open the extension and click Create Wallet

  3. Write down your 12-word seed phrase and store it safely

  4. Your wallet is connected to the Savitri testnet automatically

  5. Get testnet tokens from the faucet:

    • Open the wallet
    • Click Request Testnet Tokens
    • Wait 10 seconds for confirmation
  6. Send your first transaction:

    • Click Send
    • Enter any testnet address (or use the example address shown in the wallet)
    • Enter an amount (e.g., 10 SAVI)
    • Click Confirm
  7. Check the transaction in the wallet's History tab

You're done. You've created a wallet, received tokens, and sent a transaction on Savitri.


B. Mobile App

Time: 3 minutes

  1. Download the Savitri app:

  2. Open the app and tap Create New Wallet

  3. Save your seed phrase securely

  4. The app connects to the testnet and starts a lightweight node in the background

  5. Tap Receive to see your wallet address

  6. Tap Faucet to receive free testnet SAVI

  7. Tap Send → enter a recipient address → enter amount → confirm

  8. Watch the transaction appear in Activity

Bonus: Go to Node tab to see your lightnode status, peers connected, and PoU score.


C. Desktop Installer

Time: 5 minutes

  1. Download the installer:

  2. Run the installer and follow the setup wizard (15 steps, guided)

  3. Choose your node type:

    • Lightnode (recommended for first time) — minimal resources
    • Masternode — full validator (requires 8 GB+ RAM)
  4. The installer downloads the node binary, generates keys, and configures everything

  5. Click Start Node — your node connects to the testnet

  6. Open the Wallet tab → Create Wallet → save your seed phrase

  7. Click Faucet → receive testnet tokens

  8. Click Send → enter recipient → enter amount → confirm

  9. Check the Dashboard tab for live metrics: block height, peers, PoU score


D. Docker (Developer)

Time: 5 minutes

Prerequisites

Step 1: Start a lightnode

docker run -d --name savitri-node \
-p 4001:4001 -p 8545:8545 -p 9090:9090 \
savitri/lightnode:testnet

Step 2: Verify it's running

curl -s http://localhost:8545 -X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"chain_getBlockHeight","params":[],"id":1}'

Expected response:

{"jsonrpc":"2.0","result":{"height":12345},"id":1}

Step 3: Create a wallet

# Generate a new keypair
curl -s http://localhost:8545 -X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"wallet_create","params":[],"id":2}'

Save the returned address and private key.

Step 4: Get testnet tokens

curl -s http://localhost:8545 -X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"faucet_request","params":["YOUR_ADDRESS"],"id":3}'

Step 5: Check balance

curl -s http://localhost:8545 -X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"account_getBalance","params":["YOUR_ADDRESS"],"id":4}'

Step 6: Send a transaction

curl -s http://localhost:8545 -X POST \
-H "Content-Type: application/json" \
-d '{
"jsonrpc":"2.0",
"method":"tx_send",
"params":{
"from":"YOUR_ADDRESS",
"to":"RECIPIENT_ADDRESS",
"amount":"1000000000000000000",
"private_key":"YOUR_PRIVATE_KEY"
},
"id":5
}'

Amount is in wei (18 decimals). 1000000000000000000 = 1 SAVI.

Step 7: Run a full local testnet (optional)

git clone --recurse-submodules https://github.com/Savitri-Network/savitri-network.git
cd savitri-network/savitri-testnet
docker-compose up -d

This starts: 2 masternodes, 1 lightnode, 1 guardian, Prometheus, and Grafana.


E. Build from Source

Time: 15 minutes

Prerequisites

# macOS
brew install rustup cmake ninja llvm openssl zstd lz4 ccache protobuf
rustup install stable

# Ubuntu / Debian
sudo apt install build-essential pkg-config clang llvm-dev libclang-dev \
cmake ninja-build libssl-dev zlib1g-dev liblz4-dev libzstd-dev
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

# Windows — install Visual Studio Build Tools with C++ workload + Windows SDK

Step 1: Clone and build

git clone --recurse-submodules https://github.com/Savitri-Network/savitri-network.git
cd savitri-network

# Build a lightnode
cargo build --release -p savitri-lightnode

Step 2: Start the node

./target/release/lightnode \
--listen-port 4001 \
--tx-interval-secs 2 \
--block-interval-secs 10 \
--max-block-txs 32 \
--bootstrap <PEER_ID>@/ip4/<TESTNET_IP>/tcp/4002

Get the current testnet bootstrap address from the testnet configuration.

Step 3: Generate keys

cargo build --release -p savitri-sdk
./target/release/key_generator

This outputs your public key (address) and private key.

Step 4: Send a transaction via RPC

curl -s http://localhost:8545 -X POST \
-H "Content-Type: application/json" \
-d '{
"jsonrpc":"2.0",
"method":"tx_send",
"params":{
"from":"YOUR_ADDRESS",
"to":"RECIPIENT_ADDRESS",
"amount":"1000000000000000000",
"private_key":"YOUR_PRIVATE_KEY"
},
"id":1
}'

Step 5: Deploy a token (optional)

See the full tutorial: Deploy a SAVITRI-20 Token


What's Next?

GoalResource
Understand the architectureArchitecture Overview
Deploy a tokenToken Deployment Tutorial
Run a validator (masternode)Node Types
Build with the SDKSDK Overview
Explore the RPC APIRPC Method Reference
Join the communityDiscord
Read the tokenomicsToken Allocation
Full documentationdocs.savitrinetwork.com