Building DeFi Smart Vaults on Arbitrum
In this course, we will explore how to use the Rust language and the OpenZeppelin ERC4626 standard to create DeFi (Decentralized Finance) smart vaults. Through this course, we aim to enable students to: 1. Understand the workings of smart vaults and their applications in DeFi projects. 2. Acquire the skills to develop smart contracts using Rust.
Intended Learners
Who’s This Course For
- For Developers interested in blockchain and smart contracts
- For Developers interested in Rust programming
- For Developers interested in Arbitrum
Requirements
- Basic understanding of Arbitrum and Rust - At a minimum, you should be familiar with the content of the Stylus Rust SDK introduction course
What You’ll Learn
- The complete process of developing Arbitrum Stylus smart vaults
Syllabus
Unit 1 - Course Objectives
This chapter will cover Arbitrum Stylus Smart Vaults Concept
Unit 2 - Configuration and Environment Setup
This unit discusses how to prepare a Rust project to make it suitable for running in a smart contract environment.
Unit 3 - Import Modules
This section introduces how to import several basic tools and modules to help us build our own smart contracts.
Unit 4 - Define VaultParams Struct
This section discusses setting up the basic parameters for smart contracts, especially the necessary steps when constructing Vaults token contracts that adhere to the ERC20 standard.
Unit 5 - Define Struct
This part introduces how to create a structured storage system for smart contracts and how to set up the contract's basic functionalities.
Unit 6 - Implement Vault Struct
This section covers how to implement the basic functionality of the Vault struct.
Unit 7 - Implement Deposit Function
This section introduces how to add a deposit function to a smart contract, allowing users to deposit assets and receive token shares in return.
Unit 8 - Implement Withdraw Function
This section introduces how to add a withdraw function, allowing users to withdraw assets from the contract.
Unit 9 - Retrieve Asset Address and Total Assets
This section introduces how to implement two basic query functions within a smart contract, allowing external users and contracts to access core information about the contract.
Unit 10 - Interaction
This chapter will learn how to build and deploy programs.
Building DeFi Smart Vaults on Arbitrum