---
title: Ethereum Starter Pack
slug: ethereum-starter-pack
channel: archive
publishedAt: 2021-07-06
excerpt: Step-by-step guide to getting started in Ethereum development and a survey of useful resources.
author: Charlotte Fang
tags:
  - Guide
  - Essay
  - Crypto
canonical: https://remilia.org/blog/archive/ethereum-starter-pack
---

Step-by-step guide to getting started in Ethereum development and a survey of useful resources cobbled together from various other guides.

Recommended step-by-step:

- [[ethereum-starter-pack|Do introductory reading]] if new to the concepts of blockchain, smart contracts and decentralized finance.
- Complete [CryptoZombies walkthrough](https://cryptozombies.io/) to learn solidity syntax and NFT concepts:
- Do [Solidity course on Chainshot](https://www.chainshot.com/learn/solidity) to cement your understanding of smart contracts
- Walkthrough building a full React dApp: [Complete Guide to Full Stack ETH Development](https://dev.to/dabit3/the-complete-guide-to-full-stack-ethereum-development-3j13) - [Video Course](https://www.youtube.com/watch?v=a0osIaAOFSE)
- Familiarize yourself with [Smart Contract security practices](https://yos.io/2019/11/10/smart-contract-development-best-practices/) and run through [Ethernaut hacking wargame](https://ethernaut.openzeppelin.com/) to test your understanding.
- Setup a comprehensive [production stack](https://github.com/austintgriffith/scaffold-eth)
- Now use your stack to build increasingly complex dApps without guardrails:
- 🚤 [Follow the full Ethereum Speed Run](https://medium.com/@austin_48503/%EF%B8%8Fethereum-dev-speed-run-bd72bcba6a4c)
- 🎟 [Create your first NFT](https://github.com/austintgriffith/scaffold-eth/tree/simple-nft-example)
- 🥩 [Build a staking smart contract](https://github.com/austintgriffith/scaffold-eth/tree/challenge-1-decentralized-staking)
- 🏵 [Deploy a token and vendor](https://github.com/austintgriffith/scaffold-eth/tree/challenge-2-token-vendor)
- 🎫 [Extend the NFT example to make a “buyer mints” marketplace](https://github.com/austintgriffith/scaffold-eth/tree/buyer-mints-nft)
- 🎲 [Learn about commit/reveal](https://github.com/austintgriffith/scaffold-eth/tree/commit-reveal-with-frontend)
- ✍️ [Learn how ecrecover works](https://github.com/austintgriffith/scaffold-eth/tree/signature-recover)
- 👩‍👩‍👧‍👧 [Build a multi-sig that uses off-chain signatures](https://github.com/austintgriffith/scaffold-eth/tree/meta-multi-sig)
- ⏳ [Extend the multi-sig to stream ETH](https://github.com/austintgriffith/scaffold-eth/tree/streaming-meta-multi-sig)
- ⚖️ [Learn how a simple DEX works](https://medium.com/@austin_48503/%EF%B8%8F-minimum-viable-exchange-d84f30bd0c90)
- 🦍 [Ape into learning!](https://github.com/austintgriffith/scaffold-eth/tree/aave-ape)

Congratulations, you’re now an expert in the most lucrative & in-demand field in coding.

Resources

All resources are free and mainly from conversations in the [CryptoDevHub community](https://cryptodevhub.io/wiki/) - their wiki is highly recommended for further resources. [BuildGuidl](https://buidlguidl.com/) is another very helpful developer community with a lot of resources on their site.

## Understand

Introductory Crypto/Blockchain Reading list [https://danromero.org/crypto-reading/](https://danromero.org/crypto-reading/)

Introductory Crypto/Defi Reading list [https://a16z.com/2018/02/10/crypto-readings-resources/](https://a16z.com/2018/02/10/crypto-readings-resources/)

The Beigepaper which describes Ethereum and the Ethereum Virtual Machine (EVM) in an easy to understand way: [https://github.com/chronaeon/beigepaper](https://github.com/chronaeon/beigepaper)

Defi Report [https://consensys.net/reports/defi-report-q1-2021/](https://consensys.net/reports/defi-report-q1-2021/)

How do Automated Market Makers work? [https://medium.com/crypto-scribbles/how-do-automated-market-makers-work-1f25d0d48bc2](https://medium.com/crypto-scribbles/how-do-automated-market-makers-work-1f25d0d48bc2)

How does Compound work? [https://medium.com/crypto-scribbles/how-does-compound-work-d2ef77ccf389](https://medium.com/crypto-scribbles/how-does-compound-work-d2ef77ccf389)

## Resource Packs

DeFi Developer Road Map [https://github.com/OffcierCia/DeFi-Developer-Road-Map](https://github.com/OffcierCia/DeFi-Developer-Road-Map)

Ethereum dApp Development Guide and Wiki: [https://wiki.cryptodevhub.io/ethereum-evm/getting-started](https://wiki.cryptodevhub.io/ethereum-evm/getting-started)

Know Ethereum [https://knowethereum.com/](https://knowethereum.com/)

## Entry Guides (Like this One)

CryptoDevHub getting Started from Scratch: [https://cryptodevhub.io/wiki/blockchain-development-tutorial](https://cryptodevhub.io/wiki/blockchain-development-tutorial)

How to Become a DeFi Developer [https://defiweekly.substack.com/p/how-to-become-a-defi-developer](https://defiweekly.substack.com/p/how-to-become-a-defi-developer)

Joseph’s How to become an Ethereum Developer Guide: [https://hackmd.io/@1LsqLgZ9SFyvmF1L1suBIw/dapp-dev](https://hackmd.io/@1LsqLgZ9SFyvmF1L1suBIw/dapp-dev)

Buidl Guide: [https://github.com/austintgriffith/scaffold-eth#-documentation](https://github.com/austintgriffith/scaffold-eth#-documentation)

## Tutorials

## Interactive Tutorials

Solidity NFT Game Walkthrough: [https://cryptozombies.io/](https://cryptozombies.io/)

The Ethernaut - Solidity hacking wargame [https://ethernaut.openzeppelin.com/](https://ethernaut.openzeppelin.com/)

Blockchain: [https://blockchaindemo.io/](https://blockchaindemo.io/)

### dApp

Ultimate Ethereum Dapp Tutorial (How to Build a Full Stack Decentralized Application Step-By-Step [https://www.dappuniversity.com/articles/the-ultimate-ethereum-dapp-tutorial](https://www.dappuniversity.com/articles/the-ultimate-ethereum-dapp-tutorial)

Full Stack dApp Development: [https://dev.to/dabit3/the-complete-guide-to-full-stack-ethereum-development-3j13](https://dev.to/dabit3/the-complete-guide-to-full-stack-ethereum-development-3j13)

Building a Dapp [https://docs.openzeppelin.com/learn/building-a-dapp](https://docs.openzeppelin.com/learn/building-a-dapp)

### Solidity

Learn Solidity in Y Minutes [https://learnxinyminutes.com/docs/solidity/](https://learnxinyminutes.com/docs/solidity/)

Solidity by Example [https://solidity-by-example.org/](https://solidity-by-example.org/)

### Blockchain

Ethereum Blockchain Developer Guide [https://ethereum-blockchain-developer.com/](https://ethereum-blockchain-developer.com/)

## Stacks

Scaffold Eth - Ethereum dev stack focused on fast product iterations [https://github.com/austintgriffith/scaffold-eth](https://github.com/austintgriffith/scaffold-eth)

Money Legos - DeFi Stack [https://github.com/studydefi/money-legos](https://github.com/studydefi/money-legos)

OpenZeppelin - Secure Smart Contract Building Blocks [https://github.com/OpenZeppelin/openzeppelin-contracts](https://github.com/OpenZeppelin/openzeppelin-contracts)

## Best Practices & Security

Best Practices for Smart Contract Development [https://yos.io/2019/11/10/smart-contract-development-best-practices/](https://yos.io/2019/11/10/smart-contract-development-best-practices/)

Ethereum Smart Contract Security Best Practices [https://consensys.github.io/smart-contract-best-practices](https://consensys.github.io/smart-contract-best-practices)

Common Smart Contract vulnerabilities you might want to read through this article: [https://yos.io/2018/10/20/smart-contract-vulnerabilities-and-how-to-mitigate-them/](https://yos.io/2018/10/20/smart-contract-vulnerabilities-and-how-to-mitigate-them/)

Security Resouces [https://wiki.cryptodevhub.io/ethereum-evm/security](https://wiki.cryptodevhub.io/ethereum-evm/security)

## Tips & Tools

Wiki: [https://cryptodevhub.io/wiki/ethereum-virtual-machine-tools#ethereum-developer-tools-list](https://cryptodevhub.io/wiki/ethereum-virtual-machine-tools#ethereum-developer-tools-list) Comprehensive list: [https://github.com/ConsenSys/ethereum-developer-tools-list](https://github.com/ConsenSys/ethereum-developer-tools-list)

### Free Ethereum Gateway Hosting

Cloudflare offers a signup- and cost free hosted Ethereum Gateway –> [https://developers.cloudflare.com/distributed-web/ethereum-gateway](https://developers.cloudflare.com/distributed-web/ethereum-gateway)

All you need to do is use [https://cloudflare-eth.com](https://cloudflare-eth.com/) in your web3.js or ethers provider setup call. No signup, no API key. Just copy- and paste and you’re connected to mainnet.

You can use this as a replacement for Infura or Alchemy if you e.g. want to save API credits.

### Multicall - Bundle Contract Calls to Reduce Load

Multicall by Maker is a real “hidden” gem. It bundles multiple constant contract calls to reduce load on the Ethereum Node / Ethereum Node Provider you’re using.

You can i.e. do 10 requests but they’re then combined into just 1. This helps you save API credits when you’re e.g. using Infura.

[https://github.com/makerdao/multicall](https://github.com/makerdao/multicall)

You can use ethcall if you’re using ethers for a nice wrapper around multicall

[https://github.com/Destiner/ethcall](https://github.com/Destiner/ethcall)

### Debug Smart Contract Reverts

If you ever get stuck with hard to debug Smart Contract reverts definitely check out the Tenderly Explorer: [https://dashboard.tenderly.co/explorer](https://dashboard.tenderly.co/explorer)

Simply paste in your failed transaction, hit enter and you’ll get an in-depth stack trace of everything that happened up during the point your transaction was reverted.

This saved me hours while working with more complex Smart Contract calls in the context of Flash Loans…

### Walletlink - Extensionless Wallet Connection

If you’re looking for a simple way to connect your users wallets to your dApp without the requirement for browser extensions, you might want to take a look at WalletLink: [https://github.com/walletlink/walletlink](https://github.com/walletlink/walletlink)

Takes less than 5 minutes and 15 lines of code to setup

### Gas Optimization Resources

[https://betterprogramming.pub/how-to-write-smart-contracts-that-optimize-gas-spent-on-ethereum-30b5e9c5db85](https://betterprogramming.pub/how-to-write-smart-contracts-that-optimize-gas-spent-on-ethereum-30b5e9c5db85)

[https://eattheblocks.com/how-to-optimize-gas-cost-in-a-solidity-smart-contract-6-tips/](https://eattheblocks.com/how-to-optimize-gas-cost-in-a-solidity-smart-contract-6-tips/)

[https://www.researchgate.net/publication/340300470_Design_Patterns_for_Gas_Optimization_in_Ethereum](https://www.researchgate.net/publication/340300470_Design_Patterns_for_Gas_Optimization_in_Ethereum)

## Docs

Solidity [https://docs.soliditylang.org/](https://docs.soliditylang.org/)

Web3js [https://web3js.readthedocs.io/](https://web3js.readthedocs.io/)
