@gasrunners/evm-fetch
TypeScript icon, indicating that this package has built-in type declarations

1.0.0 • Public • Published

EVMFetch

npm (tag)

EVMFetch is a simple wrapper around multicaller contracts that makes fetching onchain data simple and intuitive.

Usage

Install:

npm install @gasrunners/evm-fetch

Instantiate an EVMFetch instance:

import { EVMFetch, Network } from '@gasrunners/evm-fetch'
import { ERC20_ABI } from '@gasrunners/common-abi'

evmFetch = new EVMFetch({
  network: Network.MAINNET,
  provider: <YOUR_RPC_URL> // e.g. `https://mainnet.infura.io/v3/${YOUR_INFURA_KEY}`,
})

Add multical onchain calls from different contracts:

evmFetch
  .addCall({
    key: 'dai.name',
    address: '0x6B175474E89094C44Da98b954EedeAC495271d0F', // Dai ERC20
    function: 'name',
    abi: ERC20_ABI,
  })
  .addCall({
    key: 'uni.name',
    address: '0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984', // Uniswap ERC20
    function: 'name',
    abi: ERC20_ABI,
  })

Then fetch the results:

const data = await evmFetch.fetch()

console.log(data) // { dai: 'Dai Stablecoin', uni: 'Uniswap' }

Package Sidebar

Install

npm i @gasrunners/evm-fetch

Weekly Downloads

1

Version

1.0.0

License

MIT

Unpacked Size

14.7 kB

Total Files

6

Last publish

Collaborators

  • 0xgafu