Skip to main content

Quick Start Guide

Get started with RP1 in under 5 minutes.

Prerequisites

  • Go 1.21+
  • Node.js 18+ (for TypeScript SDK)
  • Git

Option 1: Use the TypeScript SDK

The fastest way to interact with RP1:

npm install @rp1/sdk
import { RP1Client } from '@rp1/sdk';

// Connect to RP1 network
const client = new RP1Client('https://rpc.rp.one');

// Get account balance
const balance = await client.getBalance('rp11234...', 'urp1');
console.log(`Balance: ${balance.amount} ${balance.denom}`);

// Send tokens
const tx = await client.send({
from: 'rp11234...',
to: 'rp15678...',
amount: '1000000', // 1 RP1
denom: 'urp1',
});
console.log(`TX Hash: ${tx.hash}`);

Option 2: Run a Local Node

Clone and Build

git clone https://github.com/rp1-network/rp1-chain
cd rp1-chain
make install

Initialize the Node

# Initialize with chain-id
rp1d init my-node --chain-id rp1-local

# Create a key
rp1d keys add my-wallet

# Add genesis account
rp1d genesis add-genesis-account my-wallet 1000000000urp1

# Create genesis transaction
rp1d genesis gentx my-wallet 1000000urp1 --chain-id rp1-local

# Collect genesis transactions
rp1d genesis collect-gentxs

Start the Node

rp1d start

Your node will be running at:

  • RPC: http://localhost:26657
  • REST: http://localhost:1317
  • gRPC: localhost:9090

Option 3: Connect to Testnet

# Download testnet genesis
curl -O https://rpc.testnet.rp.one/genesis

# Configure endpoints
rp1d config set client chain-id rp1-testnet-1
rp1d config set client node https://rpc.testnet.rp.one:443

# Get testnet tokens from faucet
curl -X POST https://faucet.testnet.rp.one/request \
-H "Content-Type: application/json" \
-d '{"address": "rp1your-address..."}'

Your First Transaction

Send Tokens

rp1d tx bank send my-wallet rp1recipient... 1000000urp1 \
--chain-id rp1-testnet-1 \
--gas auto \
--gas-adjustment 1.3

Shield Tokens (Private Transfer)

# Shield 1000 RP1 tokens
rp1d tx privacy shield 1000000urp1 \
--from my-wallet \
--chain-id rp1-testnet-1

Query Balance

rp1d query bank balances $(rp1d keys show my-wallet -a)

Next Steps