Supported protocols:
Supported Node version is v10.
- run
npm install(first time) - run
npm run build
build command will generate contracts and build ejs and esm folders
This is a Compound V3 example, and every other protocol is similar
import { compoundV3 } from '@defisaver/positions-sdk';
// every protocol has market data and user data getters
const {
getCompoundV3MarketsData,
getCompoundV3AccountData,
} = compoundV3;
const provider = 'Your RPC provider';
const user = '0x123...';
const { assetsData } = await getCompoundV3MarketsData(
provider, // rpc for the network you are using (note: can be tenderly or any other testnet rpc)
1, // network
selectedMarket, // market object like in /src/markets/compound/index.ts
provider, // this must be mainnet rpc - used for getting prices onchain and calculating apys
);
const userData = await getCompoundV3AccountData(
provider,
1, // network
userAddress, // EOA or DSProxy
'', // proxy address of the user, or just empty string if checking for EOA
{
selectedMarket, // market object as in /src/markets/compound/index.ts
assetsData,
}
);More examples found here
npm run test - Run all tests
npm run test-single --name=your_test_name - Run single test for specified name e.g. for MyTest.js test name is MyTest