Rentoken is a NFT marketplace for NFT rental. Alice can mint, list, and rent NFTs on the marketplace.
The smart contracts are divided into three categories: marketplace contracts, NFT factory contracts, and NFT contracts. The user will first deploy an NFT contract through an NFT factory contract. This contract implements the ERC721 and the ERC4907 interfaces. After having minted an NFT from the contract, this NFT can be listed for rental on the marketplace with a rent price and period. When the NFT is rented, it is owned by the marketplace and the user is set to the renter. At the end of the rental period, the NFT can be redeemed.
Hardhat ethereum developing environment is used for writing the smart contracts. The smart contracts are written in solidity. The ERC721, ERC20, and ERC4907 are used. The tests are written in typescript with mocha and chai frameworks. The front end interacts with the on chain contracts using Moralis. The front end is built with react and tailwindcss.