DanielVF / evm-contract-draw

Draw EVM contract byte code

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

EVM Draw Contract

This draws each byte of bycode in an EVM contract, allowing you to get a quick overview of the shape of a smart contract.

Example image

To Install

It's written in nim.

  1. You will need to install nim as mentioned here: https://nim-lang.org/install.html

  2. Install nimPNG package using the command:

nimble install nimPNG

To Use

To use:

Edit the source to add the contract bytecode (without the leading 0x), then run:

nim compile --run evm_contract_draw.nim

This will print the name of the newly created image file.

Contributions

Contribute away! DM me on twitter at @DanielVF if you make a PR - my email is overloaded.

Wishlist:

  • Should be able take contract bytecode from std in
  • Seperate layout code from drawing code
  • Color themes
  • Better install instructions
  • Readme section to explain what this is showing
  • HTML output option with per instruction tooltips.

About

Draw EVM contract byte code

License:MIT License


Languages

Language:Nim 100.0%