> For the complete documentation index, see [llms.txt](https://docs.eridian.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.eridian.xyz/ethereum-dev.md).

# Ethereum Dev

- [Infrastructure](https://docs.eridian.xyz/ethereum-dev/infrastructure.md)
- [Hardware](https://docs.eridian.xyz/ethereum-dev/infrastructure/hardware.md): Notes on my hardware.
- [Ethereum Clients](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software.md): Notes on how to install, use and maintain multiple Ethereum validator clients.
- [Execution Clients](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/execution-clients.md)
- [Geth](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/execution-clients/geth.md): Notes on how to install, use and maintain a Geth client.
- [Installation](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/execution-clients/geth/installation.md): Geth client installation guide.
- [Useful Commands](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/execution-clients/geth/useful-commands.md): Notes on how to use a Geth Client.
- [Maintenance](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/execution-clients/geth/maintenance.md): Notes on how to maintain and update a Geth Client.
- [Erigon](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/execution-clients/erigon.md): Notes on how to install, use and maintain an Erigon client.
- [Installation](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/execution-clients/erigon/installation.md): Erigon client installation guide.
- [Useful Commands](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/execution-clients/erigon/useful-commands.md): Notes on how to use a Geth Client.
- [Maintenance](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/execution-clients/erigon/maintenance.md): Notes on how to maintain and update a Geth Client.
- [Besu](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/execution-clients/besu.md): Notes on how to install, use and maintain a Besu client.
- [Installation](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/execution-clients/besu/installation.md): Besu client installation guide.
- [Useful Commands](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/execution-clients/besu/useful-commands.md): Notes on how to use a Besu Client.
- [Maintenance](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/execution-clients/besu/maintenance.md): Notes on how to maintain and update a Besu Client.
- [Beacon Clients](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/beacon-clients.md)
- [Lighthouse](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/beacon-clients/lighthouse.md): Notes on how to install, use and maintain Lighthouse BN.
- [Installation](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/beacon-clients/lighthouse/installation.md): Lighthouse client installation guide.
- [Useful Commands](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/beacon-clients/lighthouse/useful-commands.md): Notes on how to use a Lighthouse Beacon Node.
- [Maintenance](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/beacon-clients/lighthouse/maintenance.md): Notes on how to maintain and update a Lighthouse client.
- [Teku](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/beacon-clients/teku.md): Notes on how to install, use and maintain Teku BN.
- [Installation](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/beacon-clients/teku/installation.md): Teku client installation guide.
- [Useful Commands](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/beacon-clients/teku/useful-commands.md): Notes on how to use a Teku BN.
- [Maintenance](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/beacon-clients/teku/maintenance.md): Notes on how to maintain and update a Teku client.
- [Validator Clients](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/validator-clients.md)
- [Lighthouse](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/validator-clients/lighthouse.md): Notes on how to install and maintain a Lighthouse Validator client.
- [Installation](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/validator-clients/lighthouse/installation.md): Lighthouse Validator client installation guide.
- [Useful Commands](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/validator-clients/lighthouse/useful-commands.md): Notes on how to use a Lighthouse Validator Client.
- [Maintenance](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/validator-clients/lighthouse/maintenance.md): Notes on how to maintain and update a Lighthouse Validator Client.
- [MEV Boost](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/mev-boost.md): Notes on how to install and maintain an MEV Boost client.
- [Installation](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/mev-boost/installation.md): MEV Boost client installation guide.
- [Maintenance](https://docs.eridian.xyz/ethereum-dev/infrastructure/client-software/mev-boost/maintenance.md): Notes on how to maintain and update an MEV Boost client.
- [Alerting and Monitoring](https://docs.eridian.xyz/ethereum-dev/infrastructure/alerting-and-monitoring.md)
- [Prometheus](https://docs.eridian.xyz/ethereum-dev/infrastructure/alerting-and-monitoring/prometheus.md)
- [HealthChecks.io](https://docs.eridian.xyz/ethereum-dev/infrastructure/alerting-and-monitoring/healthchecks.io.md)
- [PagerDuty](https://docs.eridian.xyz/ethereum-dev/infrastructure/alerting-and-monitoring/pagerduty.md)
- [Ethereum Notes](https://docs.eridian.xyz/ethereum-dev/ethereum-notes.md)
- [Technical Basics](https://docs.eridian.xyz/ethereum-dev/ethereum-notes/technical-basics.md)
- [Ethereum Addresses](https://docs.eridian.xyz/ethereum-dev/ethereum-notes/ethereum-addresses.md)
- [Ethereum State Explained](https://docs.eridian.xyz/ethereum-dev/ethereum-notes/ethereum-state-explained.md)
- [Gas Fees Explained](https://docs.eridian.xyz/ethereum-dev/ethereum-notes/gas-fees-explained.md)
- [Useful Tools](https://docs.eridian.xyz/ethereum-dev/useful-tools.md)
- [Ethers](https://docs.eridian.xyz/ethereum-dev/useful-tools/ethers.md)
- [Ethernal](https://docs.eridian.xyz/ethereum-dev/useful-tools/ethernal.md)
- [Solidity Notes](https://docs.eridian.xyz/ethereum-dev/solidity-notes.md)
- [Interview Questions](https://docs.eridian.xyz/ethereum-dev/solidity-notes/interview-questions.md)
- [1. Easy - Interview Questions](https://docs.eridian.xyz/ethereum-dev/solidity-notes/interview-questions/1.-easy-interview-questions.md)
- [2. Medium - Interview Questions](https://docs.eridian.xyz/ethereum-dev/solidity-notes/interview-questions/2.-medium-interview-questions.md)
- [3. Hard - Interview Questions](https://docs.eridian.xyz/ethereum-dev/solidity-notes/interview-questions/3.-hard-interview-questions.md)
- [4. Advanced - Interview Questions](https://docs.eridian.xyz/ethereum-dev/solidity-notes/interview-questions/4.-advanced-interview-questions.md)
- [Note Ideas](https://docs.eridian.xyz/ethereum-dev/solidity-notes/note-ideas.md)
- [ABI](https://docs.eridian.xyz/ethereum-dev/solidity-notes/abi.md)
- [abi.encodePacked](https://docs.eridian.xyz/ethereum-dev/solidity-notes/abi.encodepacked.md)
- [Abstract Contracts](https://docs.eridian.xyz/ethereum-dev/solidity-notes/abstract-contracts.md)
- [Arrays](https://docs.eridian.xyz/ethereum-dev/solidity-notes/arrays.md)
- [Casting](https://docs.eridian.xyz/ethereum-dev/solidity-notes/casting.md)
- [CEI - Checks, Effects, Interactions](https://docs.eridian.xyz/ethereum-dev/solidity-notes/cei-checks-effects-interactions.md)
- [Comments (NATSPEC)](https://docs.eridian.xyz/ethereum-dev/solidity-notes/comments-natspec.md)
- [Constructor](https://docs.eridian.xyz/ethereum-dev/solidity-notes/constructor.md)
- [Contract Structure & Versions](https://docs.eridian.xyz/ethereum-dev/solidity-notes/contract-structure-versions.md)
- [Data - Storage vs Memory](https://docs.eridian.xyz/ethereum-dev/solidity-notes/data-storage-vs-memory.md)
- [Data - Storage Layout](https://docs.eridian.xyz/ethereum-dev/solidity-notes/data-storage-layout.md)
- [Enum](https://docs.eridian.xyz/ethereum-dev/solidity-notes/enum.md)
- [Errors (require & revert)](https://docs.eridian.xyz/ethereum-dev/solidity-notes/errors-require-and-revert.md)
- [Events](https://docs.eridian.xyz/ethereum-dev/solidity-notes/events.md)
- [EVM Opcodes](https://docs.eridian.xyz/ethereum-dev/solidity-notes/evm-opcodes.md)
- [External Contract Interaction](https://docs.eridian.xyz/ethereum-dev/solidity-notes/external-contract-interaction.md)
- [External Dependencies](https://docs.eridian.xyz/ethereum-dev/solidity-notes/external-dependencies.md)
- [Functions](https://docs.eridian.xyz/ethereum-dev/solidity-notes/functions.md)
- [Function Modifiers](https://docs.eridian.xyz/ethereum-dev/solidity-notes/function-modifiers.md)
- [If / Else / For / While Loops](https://docs.eridian.xyz/ethereum-dev/solidity-notes/if-else-for-while-loops.md)
- [Inheritance](https://docs.eridian.xyz/ethereum-dev/solidity-notes/inheritance.md)
- [Interfaces](https://docs.eridian.xyz/ethereum-dev/solidity-notes/interfaces.md)
- [Keccak256](https://docs.eridian.xyz/ethereum-dev/solidity-notes/keccak256.md)
- [Library](https://docs.eridian.xyz/ethereum-dev/solidity-notes/library.md)
- [Mappings](https://docs.eridian.xyz/ethereum-dev/solidity-notes/mappings.md)
- [msg.sender](https://docs.eridian.xyz/ethereum-dev/solidity-notes/msg.sender.md)
- [Objects & Types](https://docs.eridian.xyz/ethereum-dev/solidity-notes/objects-and-types.md)
- [OpenZeppelin](https://docs.eridian.xyz/ethereum-dev/solidity-notes/openzeppelin.md)
- [Payable](https://docs.eridian.xyz/ethereum-dev/solidity-notes/payable.md)
- [Public State Variable vs Function](https://docs.eridian.xyz/ethereum-dev/solidity-notes/public-state-variable-vs-function.md)
- [Receive & Fallback](https://docs.eridian.xyz/ethereum-dev/solidity-notes/receive-and-fallback.md)
- [Security](https://docs.eridian.xyz/ethereum-dev/solidity-notes/security.md)
- [Self Destruct](https://docs.eridian.xyz/ethereum-dev/solidity-notes/self-destruct.md)
- [Send ETH (transfer, send, call)](https://docs.eridian.xyz/ethereum-dev/solidity-notes/send-eth-transfer-send-call.md)
- [Stack Too Deep](https://docs.eridian.xyz/ethereum-dev/solidity-notes/stack-too-deep.md)
- [Structs](https://docs.eridian.xyz/ethereum-dev/solidity-notes/structs.md)
- [Style Guide](https://docs.eridian.xyz/ethereum-dev/solidity-notes/style-guide.md)
- [Time Units](https://docs.eridian.xyz/ethereum-dev/solidity-notes/time-units.md)
- [Try / Catch](https://docs.eridian.xyz/ethereum-dev/solidity-notes/try-catch.md)
- [Typecasting](https://docs.eridian.xyz/ethereum-dev/solidity-notes/typecasting.md)
- [Using Directive](https://docs.eridian.xyz/ethereum-dev/solidity-notes/using-directive.md)
- [Variables, Consts & Immutable](https://docs.eridian.xyz/ethereum-dev/solidity-notes/variables-consts-and-immutable.md)
- [Withdraws](https://docs.eridian.xyz/ethereum-dev/solidity-notes/withdraws.md)
- [Foundry Notes](https://docs.eridian.xyz/ethereum-dev/foundry-notes.md)
- [Docs & GitHub Pages](https://docs.eridian.xyz/ethereum-dev/foundry-notes/docs-and-github-pages.md)
- [Useful Commands](https://docs.eridian.xyz/ethereum-dev/foundry-notes/useful-commands.md)
- [Anvil](https://docs.eridian.xyz/ethereum-dev/foundry-notes/useful-commands/anvil.md)
- [Cast](https://docs.eridian.xyz/ethereum-dev/foundry-notes/useful-commands/cast.md)
- [Forge](https://docs.eridian.xyz/ethereum-dev/foundry-notes/useful-commands/forge.md)
- [Tests](https://docs.eridian.xyz/ethereum-dev/foundry-notes/tests.md)
- [Cheatcodes](https://docs.eridian.xyz/ethereum-dev/foundry-notes/tests/cheatcodes.md)
- [Useful Scripts](https://docs.eridian.xyz/ethereum-dev/foundry-notes/useful-scripts.md)
- [Deploy Contract Using Hex](https://docs.eridian.xyz/ethereum-dev/foundry-notes/useful-scripts/deploy-contract-using-hex.md)
- [DeFi Challenges](https://docs.eridian.xyz/ethereum-dev/defi-challenges.md)
- [Ethernaut](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut.md)
- [Ethernaut - Template](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/ethernaut-template.md)
- [Level 1 - Fallback ⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-1-fallback.md)
- [Level 2 - Fallout ⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-2-fallout.md)
- [Level 3 - Coin Flip ⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-3-coin-flip.md)
- [Level 4 - Telephone ⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-4-telephone.md)
- [Level 5 - Token ⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-5-token.md)
- [Level 6 - Delegation ⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-6-delegation.md)
- [Level 7 - Force ⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-7-force.md)
- [Level 8 - Vault ⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-8-vault.md)
- [Level 9 - King ⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-9-king.md)
- [Level 10 - Re-entrancy ⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-10-re-entrancy.md)
- [Level 11 - Elevator ⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-11-elevator.md)
- [Level 12 - Privacy ⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-12-privacy.md)
- [Level 13 - Gatekeeper 1 ⏺⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-13-gatekeeper-1.md)
- [Level 14 - Gatekeeper 2 ⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-14-gatekeeper-2.md)
- [Level 15 - Naught Coin ⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-15-naught-coin.md)
- [Level 16 - Preservation ⏺⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-16-preservation.md)
- [Level 17 - Recovery ⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-17-recovery.md)
- [Level 18 - Magic Number ⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-18-magic-number.md)
- [Level 19 - Alien Codex ⏺⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-19-alien-codex.md)
- [Level 20 - Denial ⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-20-denial.md)
- [Level 21 - Shop ⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-21-shop.md)
- [Level 22 - Dex ⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-22-dex.md)
- [Level 23 - Dex Two ⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-23-dex-two.md)
- [Level 24 - Puzzle Wallet ⏺⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-24-puzzle-wallet.md)
- [Level 25 - Motorbike ⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-25-motorbike.md)
- [Level 26 - DoubleEntryPoint ⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-26-doubleentrypoint.md)
- [Level 27 - Good Samaritan ⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-27-good-samaritan.md)
- [Level 28 - Gatekeeper 3 ⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-28-gatekeeper-3.md)
- [Level 29 - Switch ⏺⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-29-switch.md)
- [Level 30 - Higher Order ⏺⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-30-higher-order.md)
- [Level 31 - Stake ⏺⏺⏺](https://docs.eridian.xyz/ethereum-dev/defi-challenges/ethernaut/level-31-stake.md)
- [Damn Vulnerable DeFi](https://docs.eridian.xyz/ethereum-dev/defi-challenges/damn-vulnerable-defi.md)
- [Auditing](https://docs.eridian.xyz/ethereum-dev/auditing.md)
- [Exploit Resources](https://docs.eridian.xyz/ethereum-dev/auditing/exploit-resources.md)
- [Audit Tools](https://docs.eridian.xyz/ethereum-dev/auditing/audit-tools.md)
- [MEV](https://docs.eridian.xyz/ethereum-dev/mev.md)
