Its a ERC1155 project which fractionalizes ERC721 tokens and creates ERC20 tokens for the caller, the ERC20 tokens can also be redeemed for the underlying NFT.
The inspiration behind this project was fractional ownership. Essentially there are 3 problems with NFTs
We can solve all of them by just creating derivative ERC20s for NFTs. It has these advantages:
This Project has 2 functions on top of ERC1155, fractionalize and Redeem. Fractionalize: We need to approve the contract address with the NFT contract in order to do this. Once done, this function transfers the NFT to itself and creates the ERC20 tokens for the NFT owner. Redeem: This function can only be used by the owner of all the ERC20 tokens for a particular NFT. When the ERC20 owner/buyer calls this function, the function burns the 100% supply of ERC20 tokens and sends the NFT to the owner/buyer.
ERC1155 in the backend, with help from ERC721 contracts to test, hardhat to deploy and verify and React and ethers in the frontend. I was underconfident with what I had learnt with solidity and needed to implement a project. We were surprised at how well we understood the ERC1155 documentation and how quickly we could implement the project.