NFT Lending Pools is a p2p lending and borrowing protocol for NFTs. NFT collectors can deposit their NFTs and borrow up to 30% of the estimated NFT value in USDC. The estimated value uses the 7 day weighted floor price. The more NFTs the user deposits, the more collateral they have, and the more they can borrow. On the USDC lending side, lenders are given the chance for more alpha with higher yields. Lenders deposit their USDC and earn an interest rate based on how many borrowers there are and how big the lending pool is. For this hackathon, to keep things simple, the borrow rate against NFTs is set at 20%. This means collectors who borrow against their NFTs will pay a fixed rate of 20%. The lending rate will be determined by what the protocol expects to earn compared to how many lenders there are. Ideally, the rate will be variable based on how many lenders and borrowers there are. The interest rate logic would live in another contract so the logic could be updated over time. For now, it will be bootstrapped with a fixed borrow rate and give lenders close to 20% APY, much higher than you can find lending in erc20 pools. NFT prices are volatile and there's low liquidity. This is why we've temporarily capped the borrow limit at 30% to consider price swings. We've also gone with the lower end of the NFT valuation using the floor price. This means the most rare NFT in a collection would be valued the same as the least rare. We feel this compromise is okay because the goal is to provide a foundation for NFT lending and borrowing. As NFT markets mature and price oracles support non-fungible valuations, better valuations can be provided to collectors on chain. For this contract, we hand picked one collection that's been growing in value with limited volatility-- Eva Hoverboard. Only collectors from this collection can participate. The idea though is the USDC lending pool can support many different NFT borrowing pools. Early on, NFT pools will be hand selected by the protocol, but we imagine a DAO can emerge for deciding what others to add in a modular way. There will be liquidations. Collectors will borrow too much and their NFT values may decrease. This is why we've added a liquidation method. If the USDC borrow balance of any collector exceeds the valuation of their portfolio, observers can liquidate and buy the NFTs at a 15% discount. This will help the protocol stay liquid and give incentives to liquidate bad positions. The liquidator becomes the owner of the NFTs that were used as collateral. NFTs represent the new digital economy being built within blockchain ecosystems. Unlocking the full value of NFTs can have big implications for the crypto economy. We've seen the value created from being able to use Ether and erc20s as collateral. For the most part, NFTs remain idle in collectors wallets. With NFT Lending Pools, collectors can get more utility from their NFTs. Many times, collectors need to sell to cover other costs. If they can use NFTs as collateral, they can cover their short term expenses and remain members of the community they bought into. NFT collections will see price increases and stability from lending and borrowing, because NFTs that would otherwise be sold remain off the market and reduce supply.

NFT Lending Pools showcase

How it's made

The project is build using solidity smart contracts for the Lending Pool, Chain Link Oracles integrated with the Covalent API for NFT floor price feeds, and a a custom AWS API-Lambda-Dynamo setup to facilitate the data transfer between Covalent and Chain Link. The Moralis react framework is used for the UI/UX so that users can access this protocol and enjoy the experience. Everything is deployed and functioning on the Mumbai Testnet.