- Fork the repository
- Create your feature branch:
git checkout -b my-new-feature - Copy
.env.exampleto.envand 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
multicallwhen 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 v2etc)
- Run your adapter
pnpm run adapter wallet ethereum 0x000000with 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