This tool 🛠️ is written in Rust and decodes Ethereum bytecode into human-readable opcodes and their operands. Ever felt like an ancient wizard trying to decipher an old scroll 📜? Worry not, this decoder is your magical monocle 🧐!
-
Decodes: Converts Ethereum bytecode (the enigmatic hex string 🧩) into a list of opcodes (instructions) and operands (data).
-
Stack: It also keeps track of the stack state after each opcode (👷♂️ in progress)
-
Simulation: It will execute the mnemonic against the stack, accepting jumps and opening new contexts simulating EVM's runtime (👷♂️ in progress)
-
More to come...
This project welcomes contributions from one and all. Here’s how you can help:
-
Fork 🍴 the Repository: Start by forking your own copy!
-
Clone 🐑 it Locally: Get it on your machine.
git clone https://github.com/GoldmanDAO/op-decoder.git
-
Create a New Branch 🌲: Make sure each contribution has its own branch!
git checkout -b new-feature-branch
-
Make Changes 📝: Add that feature or fix that bug!
-
Commit 💾: Make it official.
We use a custom commit message system:
- 🔥: New feature
- 🥸: Styling
- 🔧: Fix
- ✨: Code cleanup
git commit -m "🔥: Add a cool new feature" -
Push 🚀: Get it back up in your fork.
git push origin new-feature-branch
-
Pull Request 💌: Now, let us know about the changes.
We appreciate your effort, and we are excited to see what amazing additions you bring! 🎆
Got questions? Feel free to reach out here on GitHub or cast a spell 🧹 and send a message through the astral planes (or maybe just email 📧).