BondFi is a Defi platform that allows bonds to be issued by anyone. Currently, BondFi implements zero coupon bonds as the main bond instrument. In future releases, we will allow a variety of bonds. BondFi is an any-collateral platform. Any-collateral means that the bond issuer has control of how much collateral they will put up and it is up to the lenders to accept their terms. We believe this flexibility will give us a base platform where we (or anyone) can build on top of. The main goal was to allow DAOs to issue bonds but currently, anyone with an Ethereum wallet can create bonds.

Peer2DAO undercollateralized lending showcase

How it's made

BondFi is made with: Next.js as our frontend framework Hardhat for our contract framework. Metamask and walletconnect for the wallet provider The Graph for our graphql api Tenderly for contract testing and stimulation Challenges Our biggest challenge was on the Solidity parts of the project. Even though the logic was straight forward, the implementation in the Solidity language often caught us off guard. There are language nuances to Solidity that forced us to do additional research. One of them was a vague error called “Stack too deep.” Upon further research, we found that this error was caused due to too many variables being used in our function parameters. The solutions were hacky but they worked. We utilized block scoping, structs, and additional functions to get around the stack too deep issues.