Table of Contents

Some useful Ethereum links

Ethereum Yellow Paper

Ethereum stats and information

Ethereum nodes info

Run Geth Ethereum client on docker

ETH Gas Station

Zokrates - For Zero-knowledge-proofs

Infura - API

OpenZepellin - Library for secure smart contract development

Poseidon Hash ZK-friendly hashing

Curve DEX including stETH

Testing smart contracts with Remix and remixide.org

Frameworks: Hardhat, Truffle - Discontinued and Foundry.

EVM Opcodes Reference

Running an Ethereum node

To run an Ethereum node after the merge you need at least two components, the execution client and the consensus client. Multiple software options are available for this. Client diversity is good for the network. In my case I used a Linux OS (Debian), Geth and Lighthouse.

You could get by with 16GB of RAM for you might need at least 32GB for added stability.

Generate a secret to use both on Geth and Lighthouse

openssl rand -hex 32 | tr -d "\n" | sudo tee ~/jwtsecret.hex

Download and run our execution client, Geth:

geth --authrpc.addr localhost --authrpc.port 8551 --authrpc.vhosts localhost --authrpc.jwtsecret ~/jwtsecret.hex

Download and run our consensus client, Lighthouse

Run the consensus client

./lighthouse bn --network mainnet --execution-endpoint http://localhost:8551 --execution-jwt ~/jwtsecret.hex --checkpoint-sync-url https://mainnet.checkpoint.sigp.io --http