Skip to content

hannesgao/The-DeFi-Learning-Path-of-Hannes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Logo

"Where there's a will, there's a way."

A collection of useful notes, books, tutorials, manuels and tools for your DeFi Learning Path


Sponsor   Pull Requests   MIT License



đź“ť What is it?

This repository is a collection of various materials and tools that I use in my daily learning about blockchain, smart contract development, and DeFi. It brings together a lot of useful information. It is an invaluable collection of knowledge for me and I check it often.

👨‍💻 For whom?

It is mainly for experienced developers who are interested in learning smart contract development and DeFi related skills, as well as blockchain industry practitioners and smart contract developers.

đź’ˇ Contributing

If you find something which doesn't make sense, or something doesn't seem right, please make a pull request and please add valid and well-reasoned explanations about your changes or comments.

đź’– Special Thanks to Referenced Projects

đź“” The Book of Secret Knowledge Project from @trimstray

The concept, file structure, header design, logo design and foreword formats of this project were all inspired by The Book of Secret Knowledge project from @trimstray.

🎖️ Badges 4 README.md Profile Project from @alexandresanlim

The badge design and GitHub Sponsor settings for this project were inspired by the Badges 4 README.md Profile project and its author @alexandresanlim.



đź“‘ Table of Contents

1. Ethereum

2. Smart Contract Development (Solidity)

3. DeFi

4. Upgradeable Smart Contract

Notice: The table of contents is still being updated...



1. Ethereum [TOC]

1.1 Ethereum & EVM Basic


2. Smart Contract Development (Solidity) [TOC]

2.1 Documentations

2.1.1 Solidity Documentation

2.1.2 Foundry Documentation

2.2 Solidity & Foundry Tutorials (Free Course)

2.2.1 Tutorials from Alchemy University

2.2.1.1 Beginner

2.2.1.2 Intermediate

2.2.2 Tutorials from Cyfrin Updraft

2.2.2.1 Beginner

2.2.2.2 Intermediate

2.2.2.3 Advanced

2.3 Solidity Learning Toolkit

2.3.1 Scaffold-ETH 2 from BuidlGuidl

2.4 Solidity Learning Challenges & Games

2.4.1 Speed Run Ethereum from BuidlGuidl

Summary: Speed Run Ethereum is an interactive learning platform designed to teach developers how to build decentralized applications (dApps) on Ethereum.

Techstack: It uses a series of hands-on coding challenges based on Scaffold-ETH 2 to guide users through the development process, focusing on key blockchain concepts such as smart contract creation, deployment, and testing with Solidity and Hardhat.

To Join the BuidlGuidl: It is necessary to successfully complete the first five challenges and pass the automated tests in order to join the BuidlGuidl with the wallet address used to pass the challenges (signature is required when submitting the results of the challenge).

2.4.2 BuidlGuidl Batches

Summary: BuidlGuidl Batches is a program designed for builders who have completed (at least the first five challenges of) Speed Run Ethereum and joined the BuidlGuidl. It's the next step for Web3 developers within the BuidlGuidl, offering additional challenges and skills to enhance your abilities.

2.4.3 The Ethernaut from OpenZeppelin


3. DeFi [TOC]

3.1 AMM based DEX

3.1.1 Tutorials

3.1.1.1 "Build Your Own DEX" Tutorial from QuickNode

A quick guide for building a Uniswap-V1-liked AMM based DEX with code examples

3.1.2 AMM Examples

3.1.2.1 Examples from Solidity by Example

3.1.2.2 Examples from Speed Run Ethereum (Scaffold-ETH)

3.2 Uniswap

3.2.1 Uniswap V1

3.2.1.1 Uniswap V1 Codebase

Notice: The Uniswap V1 contracts were written in Vyper, not Solidity.

3.2.1.2 Uniswap V1 Tutorials from Ivan Kuznetsov (jeiwan.eth)

Notice: It is recommended to read the three tutorials in this section first, and if interested follow the tutorials to try to write the Solidity smart contract code that implements the core functionality of Uniswap V1.

3.2.2 Uniswap V2

3.2.2.1 Uniswap V2 Codebase

3.2.2.2 Uniswap V2 Tutorial from Ivan Kuznetsov (jeiwan.eth)

3.2.2.3 Uniswap V2 Tutorial from Ethereum.org

3.2.3 Uniswap V3

3.2.3.1 Uniswap V2 Codebase

3.2.3.2 Uniswap V3 Development Book from Ivan Kuznetsov (jeiwan.eth)


4. Upgradeable Smart Contract [TOC]

4.1 Proxy

4.1.1 Transparent Proxy

TODO: Filling Contents

4.1.2 UUPS (Universal Upgradeable Proxy Standard) Proxy

4.1.2.1 UUPS Proxy Explanations from RareSkills

4.1.2.2 "Create and Deploy an UUPS Upgradeable ERC20 Token" Guides from QuickNode

4.1.2.3 "Create an UUPS Upgradeable ERC20 Token Factory" Guides from Pengjun Qiao

4.2 OpenZeppelin Upgradeable Contracts

4.2.1 OpenZeppelin Contracts Wizard

4.2.2 OpenZeppelin Upgrades Library

4.2.3 OpenZeppelin Upgrades Plugins