Until now, most NFT minting systems allow users to mint immediately or only white-listed addresses at a fixed price. However, what if the user applies to the NFT that the user wants in the form of an event and the organizer mints the winning form to a specific user? With this idea, we implemented this solution in this hackathon. When a user applies(participated) to a specific NFT, the administrator sees the list of applicants and mints them. With more thinking, applicants can be selected in conjunction with the DAO, and the existing method of airdrop to all can be improved to mint to users (addresses) who fall into specific rules.
First, the server distributes the ERC-721 contract to polygon, uploads images through random image combinations to IPFS, and configures metadata. And, this metadata URI and contract address are connected at the front end(next.js). When a user applies for participation in this NFT, all data is stored in the on-chain through the tableland. This retrieves data from the admin page, and based on this data, the administrator selects a specific address. Tableland made it easy to implement all these processes. As for the minting solution, nftport was used, and the part where the list of related token IDs was obtained was used with covalent API. Through this, we utilize a solution that can most easily mint NFT and get related history. finally, we can register as a project in valist.