Rebase Token

A quick explanation of rebase tokens and non-rebase tokens - This lesson outlines the differences between rebase tokens and non-rebase tokens, using Lido stETH as the example of a rebase token and Rocket Pool rETH as the example of a non-rebase token. We discuss how token supply and balances change over time for each type.

Join the Rocket Pool Discord Server

Stay in the loop with the latest Rocket Pool updates and connect with over 5,000 developers in the community.

Solidity Developer

Rocket Pool rETH Integration

1. ETH Staking
A beginner's guide to ETH staking - This lesson covers the basic requirements and steps for running a validator on the Ethereum blockchain. You will learn the purpose of ETH staking, the requirements needed for staking, and how to deposit your ETH and run a validator. Duration: 2min
2. Rocket Pool
A beginner's guide to Rocket Pool. This lesson covers the basics of Rocket Pool, including its purpose, how to use it, and its benefits. Duration: 3min
3. rETH
A detailed explanation of rETH and how to obtain it. This lesson explains what rETH is, its purpose, and how to obtain it through either direct minting or through decentralized exchanges. The lesson also discusses yield bearing tokens, and how to trade rETH through Curve, Uniswap, and Balancer. Duration: 2min
4. Value Of rETH
A detailed explanation of rETH, a liquid staking token issued by Rocket Pool. This lesson covers the concept of rETH's value increasing over time relative to ETH as staking rewards accumulate. The lesson provides a graphical representation of this process and explains how the exchange rate of ETH to rETH works. Duration: 2min
5. Rebase Token
A quick explanation of rebase tokens and non-rebase tokens - This lesson outlines the differences between rebase tokens and non-rebase tokens, using Lido stETH as the example of a rebase token and Rocket Pool rETH as the example of a non-rebase token. We discuss how token supply and balances change over time for each type. Duration: 5min
7. What Can You Do With rETH
A comprehensive guide to rETH - This lesson explores the different ways you can use rETH, a liquid staking token for Ethereum. The lesson covers adding liquidity to a decentralized exchange, providing rETH as collateral on Aave, and restaking rETH on EigenLayer to earn additional rewards. Duration: 5min
8. Dexs
A quick guide to comparing the best price for trading ETH to RIF on different DEX protocols. The lesson covers using Rocket Pool, a DEX aggregator, Uniswap V3, and Curve to find the most advantageous exchange rate for trading ETH to RIF. Duration: 2min
9. Storage
A comprehensive guide to the rETH contracts - Understanding the key Rocket Pool contracts and how they interact with each other. The lesson walks you through the concepts of Rocket Storage contracts and how they are utilized to store data in the Rocket Pool system. It will also dive into the different functions used to access and store data. Duration: 1min
10. Mint And Burn
A simple walkthrough of the Rocket Pool smart contract architecture - This lesson explores the key smart contracts involved in the Rocket Pool protocol, including `RocketDepositPool`, `RocketStorage`, and `RocketTokenRETH`, and how they interact to facilitate the deposit and withdrawal of ETH. The video shows how users can deposit ETH into Rocket Pool to receive rETH tokens, and how they can redeem their ETH by burning their rETH tokens. Duration: 2min
11. Exchange Rate Math
A simple explanation of how to calculate the rETH/ETH exchange rate. This lesson will walk you through an example that calculates the exchange rate using real-life numbers. It shows how to use a formula to solve for the ETH amount you will receive if you burn a certain number of rETH and vice versa. Duration: 3min
12. Deposit Fee
A comprehensive guide to understanding the deposit function inside the RocketPool protocol - The lesson covers how the function checks if deposits are enabled at the protocol level and how deposit fee is calculated and subtracted from the user's deposit amount. Duration: 2min
13. rETH Block Delay
A detailed look at the Rocket Token (RETH) contract - This lesson covers the logic behind mint and burn functions in the Rocket Token contract, how the exchange rates are calculated, and finally, the transfer hook logic is examined in detail. Duration: 4min
15. Exercise ETH To rETH Exchange Rate
A practical guide to implementing ETH to rETH swap calculations in a Solidity smart contract. The lesson focuses on fetching necessary data from Rocket Pool contracts to calculate the exchange rate and deposit fee, then using it to accurately determine the amount of rETH received for a given ETH amount. Reading Time: 0min
16. Solution ETH To rETH Exchange Rate
A comprehensive guide to calculating rETH and fees when using the Rocket Pool smart contract. This lesson focuses on the logic behind the calculation and how to implement the code for both rETH and fee in Solidity. Duration: 2min
17. Exercise rETH To ETH Exchange Rate
A detailed guide to calculating rETH to ETH swaps in RocketPool - This lesson explores how to calculate the amount of ETH received when swapping a given amount of rETH. It involves fetching necessary data from Rocket Pool contracts and implementing the conversion logic. Reading Time: 0min
18. Solution rETH To ETH Exchange Rate
A practical guide to Solidity function calls - Learn how to calculate the amount of ETH received from a given rETH amount by utilizing a Solidity function call. The lesson walks you through writing the code, testing it with Forge, and interpreting the results. Duration: 1min
19. Exercise rETH Availability
A concise guide to `SwapRocketPool.getAvailability` exercise - Learn how to check if rETH minting is available and the maximum amount that can be deposited. This lesson focuses on using the Rocket Pool's `protocolSettings` and `depositPool` contracts to get the deposit availability status and the max deposit amount. Reading Time: 0min
20. Solution rETH Availability
A practical guide to checking deposit availability and maximum deposit amount. This video lesson demonstrates how to use the `getAvailability()` function in the `SwapRocketPool.sol` contract to check if rETH deposits are currently enabled. It also shows how to retrieve the maximum allowed deposit amount in ETH using the `depositPool.getMaximumDepositAmount()` function. Duration: 1min
21. Exercise rETH Deposit Delay
A `SwapRocketPool.getDepositDelay` exercise - Learn to directly fetch data from the `RocketStorage` contract by implementing logic to fetch the deposit delay setting. Reading Time: 0min
22. Solution rETH Deposit Delay
A beginner's guide to building a Rocket Pool Swap Contract. This lesson covers how to set up a deposit delay for ETH deposits in a Rocket Pool swap contract and how to retrieve that deposit delay using a solidity function. Duration: 1min
23. Exercise Last Deposit Block
A practical guide to using the RocketStorage contract to get the last deposit block. This lesson focuses on reading specific storage variables of the RocketStorage contract, understanding how data is stored, and accessing it directly to determine the last deposit block for a user. Reading Time: 0min
24. Solution Last Deposit Block
A beginner's guide to retrieving the last deposit block in a Solidity smart contract. The lesson covers understanding how to retrieve the last deposit block using the RocketStorage contract and how to implement the logic in the RocketPool contract. Duration: 1min
25. Exercise Rocket Pool Swap ETH To rETH
A practical exercise to swap ETH to rETH - This exercise provides a hands-on experience with minting rETH using ETH, guiding you through the process of interacting with the RocketPool contract to perform the swap. By the end of this lesson, you'll understand how to implement the swapEthToReth function, gaining practical insights into DeFi token swaps. Reading Time: 0min
26. Solution Rocket Pool Swap ETH To rETH
A practical guide to swapping ETH to rETH using Rocketpool smart contracts - The lesson covers how to use a Solidity development environment to call the Rocketpool deposit pool contract to swap ETH for rETH using the deposit function. Duration: 1min
27. Exercise Rocket Pool Swap rETH To ETH
An insightful exercise to swapping rETH to ETH using Rocket Pool - Learn how to burn rETH and redeem ETH. This lesson guides you through the process of implementing the `swapRethToEth` function and explains how to burn rETH and receive ETH in return. Reading Time: 0min
28. Solution Rocket Pool Swap rETH To ETH
A comprehensive guide to swapping rETH to ETH. The lesson covers the process of burning rETH and receiving ETH in exchange. This includes pointing the rETH contract from the message sender, calling the burn function on the rETH contract, and declaring a payable receive function for the contract to receive ETH. Duration: 1min
29. Exercise Uniswap V3 Swap wETH To rETH
A practical guide to swapping rETH to WETH on Uniswap V3. This lesson walks you through the process of swapping rETH to WETH on Uniswap V3, using the internal swap function and ensuring you receive the minimum expected WETH amount. Reading Time: 0min
30. Solution Uniswap V3 Swap wETH To rETH
A comprehensive guide to swapping tokens using Uniswap V3 - The lesson shows how to swap WETH to rETH using Uniswap V3 and discusses the process of pulling the WETH tokens from message center and approving the Uniswap V3 router to access the WETH. Duration: 2min
31. Exercise Uniswap V3 Swap rETH To wETH
An exercise to walk you through how to implement the `swapWethToReth` function, focusing on swapping WETH to rETH on Uniswap V3 by calling the internal function `swap`. Reading Time: 0min
32. Solution Uniswap V3 Swap rETH To wETH
A comprehensive guide to swapping rETH back into WETH using Uniswap V3. The lesson covers how to interact with Uniswap V3's swap router to exchange rETH for WETH and demonstrates the use of constants for streamlining the process. Duration: 2min
33. Exercise Balancer Swap wETH To rETH
An insightful exercise to `SwapBalancerV2.swapWethToReth` - This lesson guides you through swapping WETH to rETH on Balancer V2. The exercise involves implementing the swap logic and testing to ensure the successful conversion of WETH to rETH using the Balancer V2 protocol. Reading Time: 0min
34. Solution Balancer Swap wETH To rETH
A comprehensive guide to swapping WETH to rETH using the Balancer Vault. This lesson covers the process of approving the Balancer Vault to spend WETH, then calling the `swap` function to execute the swap with the correct parameters. Duration: 2min
35. Exercise Balancer Swap rETH To wETH
An essential exercise to swap rETH to WETH using Balancer V2 - This lesson covers the process of swapping rETH to WETH on Balancer V2 by implementing the swap function. You will learn how to use the `swap` function. Reading Time: 0min
36. Solution Balancer Swap rETH To wETH
A practical demonstration of swapping rETH to WETH using the Balancer Vault. The lesson covers how to use the Balancer Vault to exchange rETH to WETH, modifying the code from the previous lesson to accommodate the change in tokens being exchanged. Duration: 1min

Course Overview

About the course

What you'll learn

Rocket Pool rETH staking, yield mechanisms, trading options, and contract architecture

How to distribute rewards and calculate rETH/ETH exchange rate

How to acquire and redeem rETH

Integrating rETH into DeFi protocols like AAVE V3

How to how to create leveraged ETH positions using rETH

How to provide rETH as liquidity to Balancer and Aura

Getting the USD price of rETH using Rocket Pool NAV oracle

Re-staking with EigenLayer

Course Description

Who is this course for?

  • Web3 Developers
  • Software Engineers
  • Financial Analysts
  • Finance developers
  • Smart Contract Security Researchers

Potential Careers

DeFi Developer

$75,000 - $200,000 (avg. salary)

Smart Contract Engineer

$100,000 - $150,000 (avg. salary)

Web3 developer

$60,000 - $150,000 (avg. salary)

Smart Contract Auditor

$100,000 - $200,000 (avg. salary)

Blockchain Financial Analyst

$100,000 - $150,000 (avg. salary)

Web3 Developer Relations

$85,000 - $125,000 (avg. salary)

Last updated on March 26, 2025

Cyfrin
Updraft
CodeHawks
Solodit
Resources