|
| 1 | +# 🚀 Starknet Validator Solo Staking Guide |
| 2 | + |
| 3 | +**Starknet** is a Layer 2 network built on Ethereum, designed for scalability and performance using STARK proofs. |
| 4 | +This guide will walk you through the **complete process of becoming a Starknet validator and Solo Staker**, from wallet setup to running your attestation client and validator on DAppNode. |
| 5 | + |
| 6 | +We’ll use **[Ready Wallet](https://www.ready.co/)** and Starknet's block explorer interfaces for all on-chain interactions. |
| 7 | + |
| 8 | +--- |
| 9 | + |
| 10 | +## 🛠 Prerequisites |
| 11 | + |
| 12 | +✅ [Ready Wallet](https://www.ready.co/) installed |
| 13 | +✅ Access to a synced Starknet full node (Juno or Pathfinder) |
| 14 | +✅ Minimum STRK balance: |
| 15 | + |
| 16 | +- **Sepolia:** 1 STRK |
| 17 | +- **Mainnet:** 20,000 STRK |
| 18 | + |
| 19 | +--- |
| 20 | + |
| 21 | +## 1️⃣ Create Accounts |
| 22 | + |
| 23 | +We’ll use **three Starknet accounts** in Ready: |
| 24 | + |
| 25 | +- **staker** → Holds your stake |
| 26 | +- **operator** → Runs the validator |
| 27 | +- **rewards** → Receives rewards |
| 28 | + |
| 29 | +👉 Create them directly in Ready Wallet as _Standard Account_ |
| 30 | + |
| 31 | + |
| 32 | + |
| 33 | +--- |
| 34 | + |
| 35 | +## 2️⃣ Fund and Deploy the Accounts |
| 36 | + |
| 37 | +- Fund your **staker** and **operator** accounts with the required STRK amount. |
| 38 | + |
| 39 | +> Remember to add more than the minimum staking amount to cover gas fees. |
| 40 | +> On Sepolia, you can use the [Starknet Faucet](https://starknet-faucet.vercel.app). |
| 41 | +
|
| 42 | +- Deploy your **accounts** in Ready Wallet following these steps: |
| 43 | + |
| 44 | + |
| 45 | +--- |
| 46 | + |
| 47 | +## 3️⃣ Export your operator address private key |
| 48 | + |
| 49 | +The _starknetstaking_ package needs your **operator** address private key to make the _attestations_. |
| 50 | +You can obtain it from _Ready Wallet_ following these steps: |
| 51 | + |
| 52 | + |
| 53 | +--- |
| 54 | + |
| 55 | +## 4️⃣ Approve spending |
| 56 | + |
| 57 | +1. Go to the block explorer STRK token contract [STRK (Sepolia)](https://sepolia.voyager.online/contract/0x04718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d#writeContract) or [STRK (Mainnet)](https://voyager.online/contract/0x04718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d#writeContract) |
| 58 | +2. Connect your **staker** Ready Wallet. |
| 59 | +3. In the implementation section, scroll down to the `approve` function (#19 on Sepolia #22 in Mainnet) |
| 60 | +4. Click and fill in the data: |
| 61 | + - **spender** → Starknet Staking Contract [Starknet Addresses](https://docs.starknet.io/resources/chain-info/#staking) |
| 62 | + - **amount** → Amount in FRI (1 STRK = `1000000000000000000`) |
| 63 | +5. Click the **Transact** button. |
| 64 | + |
| 65 | + |
| 66 | + |
| 67 | +--- |
| 68 | + |
| 69 | +## 5️⃣ Stake STRK |
| 70 | + |
| 71 | +1. Open the [Staking Contract on Voyager (Sepolia)](https://sepolia.voyager.online/contract/0x03745ab04a431fc02871a139be6b93d9260b0ff3e779ad9c8b377183b23109f1#writeContract) or the [Staking Contract on Voyager (Mainnet)](https://voyager.online/contract/0x00ca1702e64c81d9a07b86bd2c540188d92a2c73cf5cc0e508d949015e7e84a7#writeContract). |
| 72 | +2. Connect your **staker** Ready Wallet. |
| 73 | +3. In the implementation section, scroll down to the `stake` function (#1) |
| 74 | +4. Click and fill in the calldata: |
| 75 | + - **rewards_address** → Your rewards account |
| 76 | + - **operational_address** → Your operator account |
| 77 | + - **amount** → Amount in FRI (1 STRK = `1000000000000000000`) |
| 78 | +5. Click the **Transact** button. |
| 79 | + |
| 80 | +📌 **Staking contract addresses:** [Starknet Docs – Staking](https://docs.starknet.io/resources/chain-info/#staking) |
| 81 | + |
| 82 | + |
| 83 | + |
| 84 | +--- |
| 85 | + |
| 86 | +## 6️⃣ Install the Starknet Staking Package on Dappnode |
| 87 | + |
| 88 | +Now that you’ve staked, you need to set up the validator client on your DAppNode. |
| 89 | + |
| 90 | +1. Open your Dappnode UI. |
| 91 | +2. Go to the **DAppStore** and search for `starknetstaking`. |
| 92 | +3. Click **Install**. |
| 93 | + |
| 94 | +During the installation process, you will need to enter the following information: |
| 95 | + |
| 96 | +- `Operational Address` → The address for the `operator` Account you created via Ready Wallet in step #1 |
| 97 | +- `Private Key` → The private key from your operator account (exported from Ready Wallet in step #3) |
| 98 | + |
| 99 | + |
| 100 | + |
| 101 | +The attestation process will start automatically, and your validator will be live. You can check rewards and more info via the `staker_info_v1` contract in Voyager [Mainnet](https://voyager.online/contract/0x00ca1702e64c81d9a07b86bd2c540188d92a2c73cf5cc0e508d949015e7e84a7#readContract) or [Sepolia](https://sepolia.voyager.online/contract/0x03745Ab04a431fc02871A139be6B93D9260b0Ff3E779AD9c8B377183B23109F1#readContract) |
| 102 | + |
| 103 | +--- |
| 104 | + |
| 105 | +## 🧠 Notes & Tips |
| 106 | + |
| 107 | +- You can **claim rewards** or **increase stake** later from the same Voyager contract UI. |
| 108 | +- Make sure your validator client runs **24/7** to avoid penalties. |
| 109 | +- Always test your setup on Sepolia before moving to mainnet. |
| 110 | + |
| 111 | +--- |
| 112 | + |
| 113 | +**References:** |
| 114 | + |
| 115 | +- [Ready Wallet](https://www.ready.co/) |
| 116 | +- [Voyager StarkNet Explorer](https://voyager.online/) |
| 117 | +- [Starkscan Starknet Explorer](https://starkscan.co/) |
| 118 | +- [Starknet Staking Docs](https://docs.starknet.io/architecture/staking/) |
| 119 | +- [Juno Full Node](https://github.com/NethermindEth/juno) |
0 commit comments