Gaming oriented market place. Trande NFTs and its assets with Token Bound Accounts EIP-6551 support.
Gaming has grown a lot in the crypto space, and there is still plenty of room to expand. But for that to happen, user experience needs to improve, and recently with the introduction of new infrastructure such as Account Abstraction and Token Bound Accounts, this is becoming a reality.
Token Bound Accounts(TBA) give identity to NFTs by granting them ownership of a smart contract account bound to it. We've constructed a simple market contract to place sales of an NFT and its corresponding TBA. One is able to place an NFT for sale and the buyer has the reassurance that the content within the account can't be tampered with since the TBA automatically is locked through the buying process.
This project allows for NFTs and their TBA to be traded together, in a safe manner. A clear example is within gaming, a token can represent a gaming character, and the TBA can hold all of its items. The owner can place it for sale in the Token Lock Market, which creates a market for composable NFTs.
The project consists of a Market contract, that is responsible for keeping track of the open sales, exposing them to possible buyers. A custom implementation of the EIP6551 Account was implemented, which gets locked once placed upon sale. This is done in a single transaction by providing a signature scheme that both locks the account and places it on sale. This is after granting the market approval to transfer the NFT on sale. Once on sale, a buyer can get ownership of the locked account and its token by paying the corresponding sale price. We've used the mantle network for deployments, and the EIP6551 had to be deployed.
As for the front end, it's built on react and uses the wagmi tool set, covalent API is used to fetch token data.