Hola Mundo — Tu Primera Transacción en Savitri
Este tutorial te lleva desde cero hasta enviar tu primera transacción en la testnet de Savitri. Elige el camino que mejor se adapte a tu perfil.
| Camino | Para | Tiempo | Requisitos |
|---|---|---|---|
| A. Cartera de Navegador | Usuarios de cripto | 2 min | Chrome/Brave |
| B. Aplicación Móvil | Usuarios móviles | 3 min | iOS o Android |
| C. Instalador de Escritorio | Usuarios no técnicos | 5 min | Windows o macOS |
| D. Docker (Desarrollador) | Desarrolladores | 5 min | Docker instalado |
| E. Compilar desde el Código Fuente | Desarrolladores Rust | 15 min | Rust 1.82+ |
A. Cartera de Navegador
Tiempo: 2 minutos
-
Instala la extensión Savitri Wallet desde la Chrome Web Store
-
Abre la extensión y haz clic en Crear Cartera
-
Anota tu frase semilla de 12 palabras y guárdala en un lugar seguro
-
Tu cartera se conecta automáticamente a la testnet de Savitri
-
Obtén tokens de testnet desde el faucet:
- Abre la cartera
- Haz clic en Solicitar Tokens de Testnet
- Espera 10 segundos para la confirmación
-
Envía tu primera transacción:
- Haz clic en Enviar
- Ingresa cualquier dirección de testnet (o usa la dirección de ejemplo que aparece en la cartera)
- Ingresa una cantidad (p. ej., 10 SAVI)
- Haz clic en Confirmar
-
Revisa la transacción en la pestaña Historial de la cartera
Listo. Has creado una cartera, recibido tokens y enviado una transacción en Savitri.
B. Aplicación Móvil
Tiempo: 3 minutos
-
Descarga la aplicación Savitri:
-
Abre la aplicación y toca Crear Nueva Cartera
-
Guarda tu frase semilla de forma segura
-
La aplicación se conecta a la testnet e inicia un nodo ligero en segundo plano
-
Toca Recibir para ver tu dirección de cartera
-
Toca Faucet para recibir SAVI de testnet gratis
-
Toca Enviar → ingresa una dirección de destinatario → ingresa la cantidad → confirma
-
Observa la transacción aparecer en Actividad
Extra: Ve a la pestaña Nodo para ver el estado de tu nodo ligero, pares conectados y puntaje PoU.
C. Instalador de Escritorio
Tiempo: 5 minutos
-
Descarga el instalador:
-
Ejecuta el instalador y sigue el asistente de configuración (15 pasos, guiado)
-
Elige tu tipo de nodo:
- Nodo ligero (recomendado para la primera vez) — recursos mínimos
- Masternodo — validador completo (requiere 8 GB+ de RAM)
-
El instalador descarga el binario del nodo, genera claves y configura todo
-
Haz clic en Iniciar Nodo — tu nodo se conecta a la testnet
-
Abre la pestaña Cartera → Crear Cartera → guarda tu frase semilla
-
Haz clic en Faucet → recibe tokens de testnet
-
Haz clic en Enviar → ingresa el destinatario → ingresa la cantidad → confirma
-
Revisa la pestaña Panel para métricas en vivo: altura de bloque, pares, puntaje PoU
D. Docker (Desarrollador)
Tiempo: 5 minutos
Requisitos Previos
- Docker instalado (obtener Docker)
Paso 1: Iniciar un nodo ligero
docker run -d --name savitri-node \
-p 4001:4001 -p 8545:8545 -p 9090:9090 \
savitri/lightnode:testnet
Paso 2: Verificar que está funcionando
curl -s http://localhost:8545 -X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"chain_getBlockHeight","params":[],"id":1}'
Respuesta esperada:
{"jsonrpc":"2.0","result":{"height":12345},"id":1}
Paso 3: Crear una cartera
# 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}'
Guarda la dirección y la clave privada devueltas.
Paso 4: Obtener tokens de testnet
curl -s http://localhost:8545 -X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"faucet_request","params":["YOUR_ADDRESS"],"id":3}'
Paso 5: Verificar saldo
curl -s http://localhost:8545 -X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"account_getBalance","params":["YOUR_ADDRESS"],"id":4}'
Paso 6: Enviar una transacción
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
}'
La cantidad está en wei (18 decimales). 1000000000000000000 = 1 SAVI.
Paso 7: Ejecutar una testnet local completa (opcional)
git clone --recurse-submodules https://github.com/Savitri-Network/savitri-network.git
cd savitri-network/savitri-testnet
docker-compose up -d
Esto inicia: 2 masternodos, 1 nodo ligero, 1 guardian, Prometheus y Grafana.
- Panel de Grafana: http://localhost:3000
- Métricas de Prometheus: http://localhost:9090
- RPC (masternodo 1): http://localhost:8545
- RPC (masternodo 2): http://localhost:8546
- RPC (nodo ligero): http://localhost:8547
E. Compilar desde el Código Fuente
Tiempo: 15 minutos
Requisitos Previos
# 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
Paso 1: Clonar y compilar
git clone --recurse-submodules https://github.com/Savitri-Network/savitri-network.git
cd savitri-network
# Build a lightnode
cargo build --release -p savitri-lightnode
Paso 2: Iniciar el nodo
./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
Obtén la dirección bootstrap actual de la testnet en la configuración de testnet.
Paso 3: Generar claves
cargo build --release -p savitri-sdk
./target/release/key_generator
Esto muestra tu clave pública (dirección) y clave privada.
Paso 4: Enviar una transacción vía 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
}'
Paso 5: Desplegar un token (opcional)
Consulta el tutorial completo: Desplegar un Token SAVITRI-20
¿Qué Sigue?
| Objetivo | Recurso |
|---|---|
| Entender la arquitectura | Descripción General de la Arquitectura |
| Desplegar un token | Tutorial de Despliegue de Tokens |
| Ejecutar un validador (masternodo) | Tipos de Nodo |
| Construir con el SDK | Descripción General del SDK |
| Explorar la API RPC | Referencia de Métodos RPC |
| Unirse a la comunidad | Discord |
| Leer la tokenómica | Asignación de Tokens |
| Documentación completa | docs.savitrinetwork.com |