This project allows you to learn the basics in web3. You will have to create your non-fungible token!
TokenizeArt is the second project of 42 related to cryptocurrencies and blockchain, after Tokenizer. But this time, instead of creating a fungible token, we have to create a non-fungible token (NFT) with the logo 42 displayed on it.
To avoid spending real money on the transactions involved in this project, I have decided to upload the contract on the Ethereum Sepolia Testnet.
Some tools and frameworks exist to simplify the creation of Solidity contract, and the interactions with any EVM-compatible blockchain: for this project, I am using Hardhat. It is development environment for Ethereum software which helps you write, test, debug and deploy your Solidity smart contracts using JavaScript or TypeScript.
One of the requirement of this project is to store the NFT image and metadata using IPFS. Pinata seemed to be the perfect fit: a famous IPFS pinning service that provides decentralized file storage and management for blockchain and dApps developers.
In order to interact with the Sepolia network, I had to sign up on Alchemy and create a RPC URL for this project. This step was not mandatory because it is always possible to use a public node, but Alchemy RPC URLs are more reliable and have enhanced performance.
To verify my contract on the Ethereum blockchain explorer, I had to sign up on the Etherscan website, and generate an API key.
The NFT image has been generated by an AI.
The address of the contract created by this project is 0xD3739B85ccdC46681066ba5aFA48177caC93144b.
Please refer to the README located in the documentation directory in order to learn how to deploy the contract from this project, and mint the provided image as a NFT.