weaverfi

The NPM package to query DeFi.

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
weaverfi
1631.33.13 days ago7 months agoMinified + gzip package size for weaverfi in KB

Readme

!WeaverFi Bannerbanner The NPM package to query DeFi. CodeQL Version Downloads NodeJS TypeScript

Contributing

Contribution guidelines can be found here.

Usage

Install the package using the following: ``` npm i weaverfi ``` Importing the package can be done through the following: ```ts import weaver from 'weaverfi' ``` Other options to suit different app configurations: ```ts import WeaverFi from 'weaverfi' import { WeaverFi } from 'weaverfi' const weaver = require('weaverfi').default ``` The WeaverFi object (or weaver if you prefer to import it that way) contains some global methods such as WeaverFi.getAllProjects(), WeaverFi.getAllTokens() or WeaverFi.getAllTokenPrices(). Each supported chain has its own methods that can be used as WeaverFi.eth.getWalletBalance(wallet), for example.

Global Methods Available

  • getAllChains()
  • getAllChainInfo()
  • getAllProjects()
  • getAllTokens()
  • getAllTokenPrices()
  • getNativeTokenPrices()
  • checkPrices()
  • getAllBalances(wallet)

Chain Methods Available

  • query(address, abi, method, args)
  • queryBlocks(address, abi, event, querySize, args, start, end)
  • isAddress(address)
  • getTXCount(address)
  • getWalletBalance(wallet)
  • getProjectBalance(wallet, project)
  • getAllProjectBalances(wallet)
  • getNFTBalance(wallet)
  • getTokens()
  • getTokenLogo(symbol)
  • getGasEstimates()
  • getInfo()
  • getProjects()
  • getTokenPrices()
  • getTokenPrice(address, decimals)
  • updateTokenPrice(priceData)
  • checkPrices()
The ETH chain also contains the resolveENS(name), lookupENS(address) and fetchAvatarENS(name) methods.

Chains Supported

  • ETH (Ethereum)
  • BSC (Binance Smart Chain)
  • POLY (Polygon)
  • FTM (Fantom)
  • AVAX (Avalanche)
  • CRONOS (Cronos)
  • OP (Optimism)
  • ARB (Arbitrum)

Types

Any extra types used within the SDK are located in the types.ts file. If needed, these can be imported from weaverfi/dist/types. Example: ```ts import type { ChainID, Address, Token } from 'weaverfi/dist/types'; ```