The Morphosis swarm is organizing a new class!
I’ll be presenting a course on the latest Ethereum Development technologies we have at our disposal.
I’m adding a poll to gather interest in having a working group format for the course. The idea is to gather in a few working groups at the start of the course and address each lecture with a particular task and then use our shared time to discuss, solve problems and answer questions. The lectures will be recorded and shared at the start of each week.
- Do lectures live (like the previous course)?
- Working groups with lectures async?
Details of the Course
Name: Ethereum Developer Course
Office: 1Hive Discord
Office Hours: Wednsday 19:00 - 20:30 UTC
Duration: 1hr 30min
Description: The Ethereum development landscape has evolved a lot in the last year and a half. Tools like hardhat and libraries like ethers.js improved the developer experience by an order of magnitude. But as every technology changes take time to reach mass adoption. With this course, I hope to share with the community what is out there so we can solidify our development practices and start building even cooler things together.
Week 1 - Ethereum Fundamentals
In this lecture, we will do an overview of the core Etherum concepts important during development. We will use eth.build and remix to stick to the basics and understand the fundamentals.
- Ethereum high-level overview
- eth.build overview
- Ethereum Virtual Machine
- Remix overview
- Abstract Binary Interface
- Smart Contracts
Week 2 - Scaffold an Ethereum project
In this lecture, we will configure a development environment using vscode and scaffold-eth.
- vscode plugins
- saffold-eth overview
- hardhat overview
- Static tests with eslint and prettier
- Debugger configuration
- Use hardhat with typescript
- Smart contract types with typechain
Week 3 - Hardhat in depth
In this lecture, we will go through all the features that hardhat has to offer. And we will install a few useful plugins.
- hardhat.config & hardhat runtime environment
- Hardhat network
- Hardhat console
- Hardhat scripts & tasks
- Hardhat plugins
- Gas reporter
- Solidity coverage & GitHub workflow to integrate codecov.io
Week 4 - Ethers.js & testing a smart contract
In this lecture, we will go through a general overview of the Ethers library and we will use it to write a couple of tests for our smart contract.
- Ethers.js overview
- Useful utilities
- Application Binary Interface
- Hashing Algorithms
Week 5 - Deploying a smart contract
In this lecture we will use a new hardhat plugin, hardhat-deploy, to handle our dapp deployments.
- hardhat-deploy overview
- Write a deployment fixture
- Deploy our contracts to hardhat network
- Read and write data from our contract
- Use tenderly
- Deploy our contract to other networks
Week 6 - Subgraphs
In this lecture, we will go through the process of creating a new subgraph from scratch.
- The Graph overview
- Core concepts
- Subgraph package overview
- graph-node docker image
- Query subgraph data
Week 7 - Hooking everything in a React app
In this lecture we will create a simple react application using aragon-ui with the 1hive theme and we will fetch the dapp data from a subgraph using Aragon Connect.
- React app package overview
- aragon-ui overview
- Aragon Connect overview
- Connect provider
- Fetching data from a custom subgraph
To be done soon.
To decide the final day and hour for the course I create a lettuce meet to gather feedback about it:
As many of you know, the Morphosis swarm’s purpose is to provide education and courses to 1hive members to increase their knowledge of useful skills that will benefit the whole community. These skills will allow others to make high-value contributions to 1hive and the blockchain space.