-- Project by Louis Jabbour, Zwelli Burns, Yusef Al-Naher, and Marvin von Hagen --
Imagine you play a game and your character is an NFT. Every NFT has a different skill set. When encountering a hard level it might be useful to have a better character. NFTeaser enables you to rent this character for a limited amount of time so that you pass the level, but don’t have to buy the NFT. On the other hand, if you own a lot of characters in this game, it might be attractive to rent them to other people, monetizing your success in the game.
You want to conduct a Marketing Campaign and target a Web3-enthusiastic community. For that, you want to show an NFT from a well known collection like BAYC. NFTeaser enables you to rent this NFT to have a legitimate showcase without taking the risk associated with buying it.
Some NFTs come with real world perks like access to exclusive
events for example Flying Fish Club or BAYC. There have been instances where people bought such NFTs in front of these events to gain access. NFTeaser enables you to get access to such events by renting instead of buying the token.
The project was built primarily in Solidity with a focus on smart contract security. The main submission is a smart contract that uses ERC721 to interact with lenders and borrowers that sets up a supply, hold, and borrow side. Users can deposit NFTs and ask for a set price (including collateral), time and fee for the borrowing. Borrowers can interact with the contract to see which NFTs are available and borrow by putting up collateral. They can repay their loans for the duration of their activity. Loans are liquidated based on the parameters given through an auto liquidate function that scans the mappings of active loans to see if there are any that have elapsed. Gelato was used here as a way to automatically run and liquidate loans that have elapsed at which point the collateral provided is sent to the borrower. This eliminates the need to have 3rd party liquidators, which is currently the standard in most money markets. The front end of the application was built using Polygon Figma to generate the UI which was used in a reactjs front end.