Skip to content

halo3mic/poor-mans-tracer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Poor man's tracer 🕵️

This library provides a lightweight local tracer for Ethereum Virtual Machine (EVM) execution, leveraging the power of revm and reth-inspector.

Use Cases

  • Local Tracing: Trace transactions and smart contract executions directly on your machine, without relying on a full node. This is ideal for:
    • Cost-effective development: Experiment and debug smart contracts locally without incurring the cost of running a full node.
    • Struct Traces: Capture detailed struct information, which may not be available from some node providers.
  • Use public RPCs: Free public RPC endpoints like the ones listed on chainlist.org don't usually directly support tracing. They can be used however to trace locally, like with this library. Note that historical tracing still requires an archive node in most cases.

Note: If you don't require a lightweight solution, consider using Anvil instead.

Usage

Run an example

cargo run --example geth_struct_trace --features examples

Support trace types

Currently the library only supports Geth's Struct, Call and Prestate traces. Feel free to add more!

Dependencies

For development purposes, the library currently uses forked versions of revm and reth-inspector to ensure dependency compatibility.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages