└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # Welcome to Radbro Coding Club 2 | 3 | This repository will serve as a place for all work / information / conversations that we want to track, preserve, and share long-term. 4 | 5 | Since our main thread of communication will be via twitter gc, and we all will need Github accounts to follow some of the lessons / projects. 6 | 7 | I figured we should just use Github itself to pin information & have long-running conversationd on coding topics. This way we can avoid use of discord and telegram entirely. 8 | 9 | Long-running conversations on specific topics can be had using [issues](https://github.com/radbro/radbro-coding-club/issues/). 10 | 11 | Lesson plans, guides, + links to additional materials will be posted here as well. 12 | 13 | ### Learning Resources 14 | [Mastering Ethereum](https://github.com/ethereumbook/ethereumbook) learn the fundamentals of the EVM 15 | [Speed Run Ethereum](https://speedrunethereum.com/) learn scaffold-eth and solidity 16 | [Vyper By Example](https://vyper-by-example.org/) learn vyper - a fast, easy, and secure language to write smart contracts 17 | 18 | ### Beginner Tech Stack 1 - Scaffold-ETH 19 | For most beginners, Scaffold-ETH is a fantastic framework to learn how to build dapps. 20 | 21 | This is a "full-block-stack" framework for learning as it's built using hardhat, nextjs, hot-reloading, and many other features to make it very easy to understand the full enineering workflow. 22 | This means that you'll quickly learn how to go all the way from contracts -> to backend -> to frontend, and deploying your own dapp. 23 | 24 | If you're building a simple dapp, you may not even require an RPC provider as you can simply use the wallet's provider and read from the contracts directly by using viem. 25 | 26 | **Requirements:** 27 | [Scaffold-ETH 2](https://github.com/scaffold-eth/scaffold-eth-2/blob/main/CONTRIBUTING.md) 28 | 29 | ### Intermediate Tech Stack 1 - Scaffold-ETH + Ponder + Alchemy 30 | If you are building a more complex dapp, rather than read from an RPC on-demand (which can be slow), you may want to have all of your contract's historical data & events ready to query so you can build front-ends very quickly. 31 | To accomplish this, let's look at a slightly modified stack. 32 | 33 | Ponder makes it easy and quick to index all contract events, and it provides a GraphQL API to easily query all of your data and serve it to your app's UI & frontend. 34 | 35 | To use ponder effciently, you should use an RPC provider like Alchemy that uses compute units (CU) rather than number of requests. 36 | 37 | **Requirements:** 38 | [Scaffold-ETH 2](https://github.com/scaffold-eth/scaffold-eth-2/blob/main/CONTRIBUTING.md) 39 | [Ponder.sh](https://github.com/ponder-sh/ponder) 40 | [Alchemy](https://dashboard.alchemy.com/) 41 | 42 | --------------------------------------------------------------------------------