Get started with Helios light client in 5 minutes!
Helios is a trustless Ethereum light client that verifies all RPC data cryptographically. It converts your untrusted RPC provider (like Alchemy or Infura) into a verified, trustless local RPC endpoint.
Benefits:
- 🔒 Trustless: Cryptographically verifies all data
- ⚡ Fast: Syncs in seconds
- 💾 Lightweight: Minimal storage required
- 🔐 Secure: Protects against malicious RPC providers
- 🌐 Local: Runs on
http://127.0.0.1:8545
# Install Helios
make helios-install
# Reload your shell
source ~/.bashrc # or source ~/.zshrc
# Install Helios binary
heliosup
# Verify installation
helios --versionMake sure your .env file has your RPC URL:
# .env
SEPOLIA_RPC_URL=https://eth-sepolia.g.alchemy.com/v2/YOUR_API_KEY# Start Helios for Sepolia testnet
make helios-sepoliaYou should see:
Starting Helios Light Client for sepolia...
Helios will provide a trustless, verified local RPC endpoint
Network: sepolia
Consensus RPC: https://ethereum-sepolia-beacon-api.publicnode.com
Execution RPC: https://eth-sepolia.g.alchemy.com/v2/...
[INFO] Helios started successfully
[INFO] RPC server listening on http://127.0.0.1:8545
Open a new terminal and run:
# Test Helios RPC
make helios-testOr manually:
curl -X POST -H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' \
http://127.0.0.1:8545# .env
SEPOLIA_RPC_URL=http://127.0.0.1:8545# .env
# Centralized RPC (for when Helios is not running)
SEPOLIA_RPC_URL=https://eth-sepolia.g.alchemy.com/v2/YOUR_API_KEY
# Helios local RPC (use when Helios is running)
# SEPOLIA_RPC_URL=http://127.0.0.1:8545Now deploy contracts:
# Make sure Helios is running in another terminal
make deploy-sepoliamake helios-sepoliamake deploy-sepoliamake frontend# Install Helios
make helios-install
# Start Helios for different networks
make helios-sepolia # Sepolia testnet
make helios-mainnet # Ethereum mainnet
make helios-holesky # Holesky testnet
# Test Helios connection
make helios-test
# Update checkpoint (do this every 2 weeks)
make helios-checkpoint NETWORK=sepolia
# Stop Helios
# Press Ctrl+C in the terminal running HeliosIf you prefer manual control:
# Sepolia with automatic checkpoint fallback
helios ethereum \
--network sepolia \
--execution-rpc $SEPOLIA_RPC_URL \
--consensus-rpc https://ethereum-sepolia-beacon-api.publicnode.com \
--load-external-fallback
# Mainnet with specific checkpoint
helios ethereum \
--network mainnet \
--execution-rpc $MAINNET_RPC_URL \
--consensus-rpc https://www.lightclientdata.org \
--checkpoint 0x85e6151a246e8fdba36db27a0c7678a575346272fe978c9281e13a8b26cdfa68Solution: Use automatic fallback:
./scripts/start-helios.sh sepolia
# This includes --load-external-fallback flagOr get a fresh checkpoint:
- Visit https://sepolia.beaconcha.in
- Find the latest finalized epoch
- Copy the block root of the first slot
- Update in
helios-config.toml
Solution: Stop the existing process or use a different port:
helios ethereum --network sepolia --execution-rpc $SEPOLIA_RPC_URL --rpc-port 8546Solution:
- Check your RPC URL in
.env - Verify your API key is valid
- Ensure the RPC provider supports
eth_getProof
Solution:
- Check internet connection
- Try a different consensus RPC
- Restart Helios with
--load-external-fallback
Pre-configured settings for all networks. Located in project root.
User-level configuration (created automatically).
Convenient startup script with automatic configuration.
- Read the full documentation: See
docs/HELIOS_SETUP.md - Update checkpoints regularly: Every 1-2 weeks for best security
- Monitor Helios logs: Watch for any warnings or errors
- Test thoroughly: Always test on Sepolia before mainnet
Your App → Centralized RPC (Alchemy/Infura) → Ethereum
⚠️ Trust required
⚠️ Can be manipulated
⚠️ Single point of failure
Your App → Helios (Local) → Centralized RPC → Ethereum
✓ Cryptographically verified
✓ Trustless
✓ Secure
- 📚 Full Helios Setup Guide
- 🔗 Helios GitHub
- 🌐 Helios Website
- 📊 Sepolia Beacon Chain
- 📊 Mainnet Beacon Chain
If you encounter issues:
- Check the troubleshooting section above
- Review logs in the Helios terminal
- Consult
docs/HELIOS_SETUP.md - Open an issue on GitHub
Happy building with trustless RPC! 🚀