/Ether-101

Primary LanguageJavaScript

WTF Ethers

We are currently relearning ethers.js to reinforce the details and write a "WTF Ethers Crash Course" for beginners. We will update it with 1-3 lessons per week.

This is a sister course to the WTF Solidity Crash Course and is proudly produced by the WTF Academy community.

Note: This tutorial is based on the latest version of Ethers.js v6. For the previous version (v5) tutorial, see here.

The roadmap is determined based on the number of stars for this repository:

  • 64 ⭐ Establish a community: discord | WeChat group
  • 128 ⭐ Release advanced content
  • 256 ⭐ Provide course certification

Running in VSCode

To run the code, you need to install VSCode and Node.js. Then, run the following commands:

npm install
node 01_HelloVitalik/HelloVitalik.js

Running in an Online Editor

You can use an online JavaScript editor to run the code. Here are a few options:

Getting Started

Lesson 1: HelloVitalik (6 lines of code): Code | Tutorial

Lesson 2: Provider: Code | Tutorial

Lesson 3: Reading Contract Information: Code | Tutorial

Lesson 4: Sending ETH: Code | Tutorial

Lesson 5: Contract Interaction: Code | Tutorial

Lesson 6: Deploying a Contract: Code | Tutorial

Lesson 7: Retrieving Events: Code | Tutorial

Lesson 8: Contract Listening: Code | Tutorial

Lesson 9: Event Filtering: Code | Tutorial

Lesson 10: Unit Conversion: Code | Tutorial

Advanced

Lesson 11: CallStatic: Code | Tutorial

Lesson 12: Identifying ERC721: Code | Tutorial

Lesson 13: Encoding Calldata: Code | Tutorial

Lesson 14: Bulk Wallet Generation: Code | Tutorial

Lesson 15: Bulk Transfers: Code | Tutorial

Lesson 16: Bulk Collection: Code | Tutorial

Lesson 17: Merkle Tree Script: Code | Tutorial

Lesson 18: Digital Signature Script: Code | Tutorial

Lesson 19: Mempool Monitoring: Code | Tutorial

Lesson 20: Decoding Transaction Data: Code | Tutorial

Applications

Lesson 21: Vanity Address Generator: Code | Tutorial

Lesson 22: Reading Arbitrary Data: Code | Tutorial

Lesson 23: Front-Running Script: Code | Tutorial

Lesson 24: Identifying ERC20: Code | Tutorial

Lesson 25: Flashbots: Code | Tutorial

Tools

ET01: Connecting Wallets: Code | Tutorial

ET02: Wallet Signature Login: Code | [Tutorial](https://github.com/WTFAcademy/WTFEthers/blob/main/ET02_SignInWithEthereum