Skip to content

An ERC Library for Ethereum and other EVM compatible chains.

License

Notifications You must be signed in to change notification settings

idecentralize-finance/erclib

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

erclib

Version npm Node.js CI Socket Badge

ERC library for blockchain Development

In development. More networks, asset's and features are coming...

Install and import

npm install @idecentralize/erclib

address should be checksumed

Usage

Retrieve the chain id from your current provider or configuration

// using ethersV6
import {BrowserProvider} from "ethers";
const provider = new BrowserProvider(window.ethereum);
const chainId = (await PROVIDER.getNetwork()).chainId.toString() 

import your library

  • ERC20
  • ERC721
  • NETWORK
  • ROUTER
  • IPFS_SVG_PATH

Example of the NETWORK object entry

        id: 137,
        network: "Polygon",
        chain: "MATIC",
        chainId: 137,
        type: "Mainnet",
        rpc:"https://polygon-rpc.com",
        explorer: "https://polygonscan.com/address/",
        color: "#8247e5",
        defaultNFT: "0x5265535c7

Show the chain native currency logo

import {IPFS_SVG_PATH, NETWORK} from "@idecentralize/erclib";
<Network src={`${IPFS_SVG_PATH}${NETWORK[chainId].chain}.svg`}/>
   
const rpc = NETWORK[chainId].rpc
const usdc = "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48";
const decimals = ERC20[chainId][usdc].decimals 
const CToken = ERC20[chainId][usdc].compound
const color = ERC20[chainId][usdc].colors

FORKING : network_id should be the chain id return by the provider. When forking the mainnet using hardhat, the network id is 31337 and we want to use the mainnet asset under network id 1.

ERC20[network_id === 31337 ? 1 : network_id][usdc].decimals  // output decimals of asset

Supported Network

  • IPFS
  • Ethereum
  • Polygon
  • BSC
  • Aurora
  • Avanlance
  • xDai

Supported Testnet & protocols

  • Compound
  • Aave
  • Yearn v2

Please report any issues!

To add some assets, please submit a PR and provide the new IPFS CID.

Releases

No releases published

Packages

No packages published