- Fork the repository
- Create your feature branch:
git checkout -b my-new-feature
- Copy
.env.example
to.env
and fill in the missing values if any - Commit your changes:
git commit -m "Add some feature"
- Push to the branch:
git push origin my-new-feature
- Submit a pull request.
- Your protocol must be listed on DeFiLlama before proceeding
- Take a few minutes to review existing adapters
- Scaffold your adapter with
pnpm run create-adapter {defillama-id}
- Retrieve all contracts holding users' funds in the
getContracts()
method - Retrieve all balances in the
getBalances()
method of the adapter - Be sure to use
multicall
when possible, LlamaFolio runs thousands of adapters and it is important they run as quickly as possible - If your protocol is a fork of a known protocol, you will likely have a helper in the library (
Uniswap v2
/AAVE v2
etc)
- Run your adapter
pnpm run adapter wallet ethereum 0x000000
with a few different addresses to make sure it behaves as expected - Run the test suite to make sure there is no missing metadata
- Make sure your adapter runs in under 15 seconds. If it doesn't, explain why and try to improve it if possible