autoabi

1.1.2 • Public • Published

AutoABI

A TypeScript/JavaScript library for finding and loading Ethereum mainnet smart contract ABIs without manually retrieving them.

Installation

Use npm to install AutoABI.

npm install autoabi --save

Usage

Import

const { AutoABI } = require('autoabi')

Get a single contract's ABI

let contractABI = await AutoABI.getABI("0xeeDcD34aCd9f87aAE1eB47f06e42868E81ad2924") // returns ABI object

Get a single contract's ABI with etherscan API

let contractABI = await AutoABI.getABIFromAPI("0xeeDcD34aCd9f87aAE1eB47f06e42868E81ad2924") // returns ABI object

Get many contracts' ABIs

let contractABIs = await AutoABI.getABIs(["0xeeDcD34aCd9f87aAE1eB47f06e42868E81ad2924", "0xfb6916095ca1df60bb79ce92ce3ea74c37c5d359"]) // returns array of ABI objects

ABI Object

let contractABI = await AutoABI.getABI("0xeeDcD34aCd9f87aAE1eB47f06e42868E81ad2924")

console.log(contractABI.abiString) // Prints ABI in string format

console.log(contractABI.abiJSON) // Prints ABI in JSON format

console.log(contractABI.readableABI) // Prints a readable JSON format of ABI

console.log(contractABI.length) // Prints length of ABI JSON array

console.log(contractABI.getFunctions()) // Prints object of all functions from ABI

console.log(contractABI.getFunctionInputs('aFunction')) // Prints object of inputs required for 'aFunction'

console.log(contractABI.getEvents()) // Prints object of all events from ABI

Contributing

Please contribute to the project by making it more general or doing whatever you think could help fellow blockchain developers! Make a pull request for any features you might add and I will take a look. Thank you!

License

MIT

Readme

Keywords

none

Package Sidebar

Install

npm i autoabi

Weekly Downloads

9

Version

1.1.2

License

MIT

Unpacked Size

13.4 kB

Total Files

7

Last publish

Collaborators

  • prozwood