> 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/solidity-notes.md).

# Solidity Notes

- [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)
