Skip to content

yihuang/eth-contract

Repository files navigation

EVM contract abstraction and ABI utilities.

The main difference from Web3().eth.contract() is decoupling the contract from the Web3 instance, makes it easy to work with multiple providers, which is particularly important in today's multi-chain environment.

See the unit tests for examples of how to use it.

Builtin common contract ABIs:

Please open issue if you want to see more ABIs included.

TODO

  • event filter arguments building.
  • more tests.
  • more builtin contract ABIs for convenience
    • permit2
    • etc

Project Setup

  1. Install nix
  2. Install direnv and nix-direnv
  3. uv sync --frozen to install all dependencies. (Without --fronzen, uv version after v0.6.15 modifies the uv.lock)
  4. pytest to run all tests

If you are able to run all tests, you are ready to go!

About

A provider agnostic EVM contract abstraction and ABI utilities

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages