NFT stands for Non-fungible Tokens, and has grown much in popularity over the past few years. They are traded like cryptocurrency, typically on the Ethereum blockchain. For my final project in the class Blockchain and cryptocurrencies at the University of Bologna, I implemented my own version of an NFT marketplace, were one could mint, sell and buy NFTs. My project obtained the hightest Italian grade of 30.
The application can be regarded as a full-stack solution consisting of a backend written in Solidity and hosted on the blockchain, and a front-end written in Typescript and React. This type of application is known as a DApp, a Decentralized Application. Solidity is an object-oriented programming language used for implementing smart contracts on different blockchain platforms, and is mostly used for Ethereum. The project was implemented using the Hardhat development environment.
Once you enter the DApp, you need to connect using a crypto-wallet, specifically MetaMask. This allows the backend to know whose assets to display, and how much crypto you have in your wallet to trade with. All NFTs that are minted are hosted on IPFS: InterPlanetary File System, a peer-to-peer network protocol for file saving and sharing.
The project has't been published yet. If you are interested in more details, feel free to take a peek at the project at github.