Introduction

A deep dive into the technicalities of account abstraction - This lesson unpacks the concept of account abstraction, covering what it is, the benefits it offers over current wallet systems, and how it's implemented in practice. Learn the different ways account abstraction interacts with different blockchains, from the new Ethereum entry point to zkSync's native account abstraction.

Solidity Developer

Advanced Foundry

1. Introduction New
A comprehensive guide to building cross-chain rebased tokens. This lesson covers the fundamentals of creating a rebased token and explores advanced functionalities like using the 'super' keyword, advanced testing with fork tests and more. Duration: 3min
2. What Is-a-rebase-token New
A simple explainer to rebase tokens - This lesson covers the basic concepts of rebase tokens and how they differ from typical cryptocurrencies. We'll also explore some real-world examples including Aave, and how rebase tokens are used in DeFi. Duration: 2min
3. Rebase Token-code-structure New
A detailed guide to building a cross-chain rebase token. This lesson covers the basics of rebase tokens, including how to design a contract that accrues interest dynamically, how to set an individual interest rate for users, and how to update the global interest rate. Duration: 9min
4. Writing The-rebase-token-contract New
A complete guide to creating a rebase token - This lesson covers creating a rebase token smart contract by inheriting the ERC20 contract from OpenZeppelin, setting the global interest rate, creating a mint function to mint accrued interest, and creating a balance of function to calculate the balance of the user, including the interest that has accrued since the last time the user balance was updated. Duration: 33min
5. Mintinterest And-burn-functions New
A comprehensive guide to creating mint and burn functions for a rebase token - This lesson covers the creation of a mintAccruedInterest function to mint interest earned to the user's balance. It then explores the concept of dust and the creation of a burn function to address this. Duration: 9min
6. Finish Rebase-token-contract New
A comprehensive guide to finishing a rebase token smart contract. The lesson covers overriding important functions within OpenZeppelin's ERC20 contract for a rebase token, including transfer, transferFrom, and totalSupply. Also, the lesson shows how to implement access control to a setInterestRate function that allows for interest rate to only decrease. Duration: 16min
7. Access Control New
A technical guide to Access Control in Solidity - Learn about how to implement access control in your Solidity smart contracts using OpenZeppelin's Ownable contract, which allows for a single owner to control the contract. This guide also touches on using OpenZeppelin's AccessControl contract, which allows for granting various roles to different accounts. Duration: 12min
8. Vault And-natspec New
A comprehensive guide to building a Vault contract in Solidity. This lesson covers the fundamentals of creating a Vault contract, including how to pass in the token address to the constructor, create deposit and redeem functions, add rewards to the vault, implement a receive() function, and utilize interfaces to interact with other contracts. Duration: 14min
9. Rebase Token-tests-part-1 New
A comprehensive guide to creating a rebase token test in Solidity using Foundry. The lesson covers the process of creating a new test file, importing dependencies, writing a basic setup function, and finally deploying the test. It then demonstrates how to interact with the rebase token to create a deposit and redeem. This lesson also introduces fuzz testing to ensure that the rebase token functions correctly under a wide range of inputs. Duration: 11min
10. Vulnerabilities And-cross-chain-intro New
A basic guide to rebase tokens and cross-chain - This lesson covers a practical example of a rebase token with cross-chain features built into the design, including two main design flaws that were addressed. Learn what these design flaws are, how to implement cross-chain transfers, and how to bridge your tokens cross-chain. Duration: 6min
11. Bridging New
A comprehensive introduction to blockchain bridges. This lesson covers what a blockchain bridge is, how they work, the different types of bridges, and the benefits of cross-chain interoperability. Duration: 8min
12. Ccip New
A comprehensive guide to Chainlink CCIP - This lesson covers the basic functionality of Chainlink CCIP, the decentralized framework for secure cross-chain messaging. It teaches you how to send a message and some tokens across chains via CCIP with detailed explanations and examples. Duration: 12min
13. The Cct-standard New
A comprehensive guide to the Chainlink CCIP Cross Chain Token Standard. This lesson will cover the basics of the standard, two main reasons it was built, a quick architectural overview, and a demonstration of deploying a cross-chain token using the Chainlink CCIP tutorials. Duration: 13min
14. Pool Contract New
Duration: 31min
15. Finish Pool-contract New
A technical guide to finishing the pool contract in a Solidity smart contract project. The lesson covers how to finish building a smart contract pool, including how to use the proper file paths in the import statements, and how to properly pass arguments to the function when setting interest rates. Duration: 1min
16. Chainlink Local-and-fork-tests New
A practical guide to Chainlink local and fork tests. The lesson covers the basics of setting up a Chainlink local test environment, including installing the necessary dependencies, importing the CCIP local simulator, creating forks, and deploying your contracts. Duration: 11min
17. Deploy Token-test New
A comprehensive guide to deploying your first Cross Chain Token using Chainlink CCIP. This tutorial takes you step by step through deploying your tokens on both the source and destination chains using Foundry, and configuring the mint and burn permissions for your tokens to use CCIP for cross-chain transfers. Duration: 4min
18. Ccip Setup-test New
Duration: 11min
19. Configure Pool-test New
A detailed guide to configuring token pools using CCIP in Solidity. The lesson covers the basics of using the `applyChainUpdates` function inside of the `TokenPool` library to enable cross-chain communication between Sepolia and Arbitrum Sepolia. It also covers importing the `RateLimiter` library to configure rate limits for the token pool. Duration: 10min
20. Bridge Function-test New
A comprehensive guide to cross-chain token transfers using CCIP - This lesson explores the process of cross-chain token transfers, covering the steps involved in creating the necessary EVM2AnyMessage struct, interacting with the router to get the fee, and finally, sending the tokens across chains. Duration: 21min
21. First Cross-chain-test New
A comprehensive guide to creating a cross-chain token using Chainlink. The lesson dives into the world of cross-chain communication using Chainlink, demonstrating how to build a smart contract to bridge tokens across different blockchains. The lesson covers setting up a development environment, creating forks, configuring token pools, and bridging tokens in a step-by-step approach. Duration: 11min
22. Vault Deployment-script New
A comprehensive guide to deploying a Vault smart contract using Forge. The lesson explains the process of building a deployer script that automatically sets the permissions necessary for CCIP and demonstrates how to call the functions to properly deploy the Vault and grant the required permissions. Duration: 4min
23. Token And-pool-deployer New
A comprehensive guide to deploying a rebase token and a rebase token pool using Chainlink CCIP on a local simulator fork. This lesson covers creating a Solidity script that first deploys a rebase token, then deploys a rebase token pool, then configures the Chainlink CCIP network, and finally grants the newly deployed token pool the mint and burn role. Duration: 9min
24. Pool Config-script New
A comprehensive guide to configuring pools in a CCIP rebase token project. The lesson covers the creation of Solidity scripts for pool configuration, including how to import necessary contracts and libraries, define functions, and set up rate limiter configurations. Duration: 8min
25. Bridging Script New
A comprehensive guide to bridging tokens with ccip on zkSync - The lesson covers the process of creating a Solidity smart contract to bridge tokens from a Sepolia network to a zkSync Sepolia network, with a focus on using the ccip protocol for cross chain communications. Duration: 13min
26. Build Scripts New
A comprehensive guide to building cross-chain scripts for token rebasing - This lesson explains the process of building cross-chain scripts for token rebasing, including deploying contracts, testing, and deploying to a live test net. The lesson also includes important information regarding potential issues that may occur with using a 'via_ir' variable in Foundry to test scripts. Duration: 4min
27. Run Scripts-on-testnet New
A practical guide to testing and deploying a rebase token across chains using Chainlink’s CCIP. The video covers how to create a rebase token, deploy it on a test network, and use Chainlink’s CCIP to bridge it across chains, along with helpful tips for overcoming potential hurdles. Duration: 15min
28. Cross Chain-message-sucess New
A complete walkthrough to creating a rebase token and enabling it for cross-chain transfers! This lesson covers the details of creating a rebase token, deploying it to a testnet, and sending the rebase token across chains. Duration: 3min
29. Outro New
A comprehensive recap of the rebase token project. The lesson covers the basics of setting up a rebase token, deploying contracts on Sepolia, and sending tokens cross chain. Duration: 3min

Course Overview

About the course

What you'll learn

Advanced smart contract development

How to develop a stablecoin

How to develop a DeFi protocol

How to develop a DAO

Advanced smart contracts testing

Fuzz testing

Manual verification

Course Description

Who is this course for?

  • Engineers
  • Smart Contract Security researchers

Potential Careers

Web3 Developer Relations

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

Web3 developer

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

Smart Contract Engineer

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

Smart Contract Auditor

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

Security researcher

$49,999 - $120,000 (avg. salary)

Meet your instructors

Patrick Collins

Patrick Collins

Founder at Cyfrin

Web3 engineer, educator, and Cyfrin co-founder. Patrick's smart contract development and security courses have helped hundreds of thousands of engineers kickstarting their careers into web3.

Guest lecturers:

Juliette Chevalier

Juliette Chevalier

Lead Developer relations at Aragon

Ciara Nightingale

Ciara Nightingale

Developer relations at Thirdweb

Vasiliy Gualoto

Vasiliy Gualoto

Developer relations at Cyfrin

Nader Dabit

Nader Dabit

Director of developer relations at Avara

Ally Haire

Ally Haire

Developer relations at Protocol Labs

Harrison

Harrison

Founder at GasliteGG

Vitto Rivabella

Vitto Rivabella

Lead Developer relations at Cyfrin

Last updated on January 14, 2025

Testimonials

Students Reviews

Read what our students have to say about this course.

Chainlink

Chainlink

Chainlink

Gustavo Gonzalez

Gustavo Gonzalez

Solutions Engineer at OpenZeppelin

Francesco Andreoli

Francesco Andreoli

Lead Devrel at Metamask

Albert Hu

Albert Hu

DeForm Founding Engineer

Radek

Radek

Senior Developer Advocate at Ceramic

Boidushya

Boidushya

WalletConnect

Idris

Idris

Developer Relations Engineer at Axelar

Cyfrin
Updraft
CodeHawks
Solodit
Resources