Connectors are standard modules that let DeFi Smart Account interact with various smart contracts, and make the important actions accessible like cross protocol interoperability.
- Fork and clone it
- Create a feature branch:
git checkout -b new-connector
- Add the connector solidity file to
contracts/connectors
- Commit changes:
git commit -am 'Added a connector'
- Push to the remote branch:
git push origin new-connector
- Create a new Pull Request.
Be sure to comply with the requirements while building connectors for better compatibility.
- Import common files from
contracts/common
directory. - The contracts should not have
selfdestruct()
. - The contracts should not have
delegatecall()
. - Use
uint(-1)
for maximum amount everywhere. - Use
getEthAddr()
to denote Ethereum (non-ERC20). - Use
address(this)
instead ofmsg.sender
for fetching balance on-chain, etc. - Only
approve()
limited amount while giving ERC20 allowance, which strictly needs to be 0 by the end of the spell. - Use
getId()
for getting value that saved from previous spell. - Use
setId()
for setting value to save for the future spell.
If you can't find something you're looking for or have any questions, ask them at our developers community on Telegram, Discord or simply send an Email.