Little Alchemy is a popular game where players start off with the four core elements - earth, water, fire, and air. Merging two of these elements yields a third, unique element - for example, mixing earth with fire creates lava. There can be infinite possibilities and players can try to collect as many elements as they can. NFT Alchemy is an attempt to port the game Little Alchemy on the Web3 platform, where each element is an NFT that can be traded on platforms such as Opensea. Everything else remains the same, however, due to the constraints of the hackathon, I have limited the number of elements to 15 and the number of merging rules to 11. In the future, I would like to add a voting mechanism where players can put up proposals for items to be added in the game, and people can vote on whether or not they want to see the item in-game. This would make the game self-sustaining and would require little to no human intervention.

NFT Alchemy showcase

How it's made

I have extensively used the Moralis platform - to bulk mint NFTs, query the balance of a user's NFTs, as a Web3 node endpoint, and also interact with my ERC1155 smart contract. I have also made use of the MongoDB interface provided with Moralis servers to store and query the rule sets for merging two tokens. For the front end, I have forked the Ethereum-boilerplate by Moralis. The ERC1155 contract and all the NFTs are deployed and minted on the Polygon Mumbai testnet. Earlier I tried to mint the NFTs using NFTPort, but due to the comparatively slow index speed I was not able to sync the user's current NFT balance fast enough, so I decided to do everything from scratch.