Fullstack Web3 - Build an NFT Marketplace DApp on Ethereum

A step-by-step guide to build and deploy a DApp to create, buy and sell Tokens with Solidity, Ethers, Truffle & IPFS

4.70 (5 reviews)
Web Development
Fullstack Web3 - Build an NFT Marketplace DApp on Ethereum
4.5 hours
Dec 2022
last update
regular price

What you will learn

Discover the Truffle to build, debug, test and deploy a smart contract to a test networl

Create an end-to-end decentralized Application from scratch : a NFT marketplace to list, buy and sell Tokens

Write, compile and deploy smart contracts to the Remix VM (London) and a test network (Goerli)

Setting up a Metamask's Crypto Wallet as a gateway to the Ethereum blockchain, where you can buy and sell digital assets.

Learn the basics of Solidity : smart contract, solidity compiler, mapping, global variables, compile, deploy, abi, bytecodes


Welcome to the Complete Guide to Fullstack Web3 development to build a complete NFT marketplace, from back to front with Solidity, Truffle, ethers.js, IPFS, Reactjs.

In this in depth tutorial you learn Ethereum dApp Programming with the tools, protocols, and frameworks for building full stack web3 apps to :

  • mint, list, buy and sell a NFT (Non-fungible tokens)

  • How to implement the ERC721 standards (OpenZeppelin) to create unique Non-Fungible Token

  • How to get Testnet ETH to test and deploy your DApp

  • How to authenticate users with the Metamask digital Wallet (Browser extension)

  • Use IPFS to store assets with the Pinata API

What's included in this Fullstack Web3 and Ethereum Blockchain class ?

1)  Smart Contract developpment with Solidity

  • Write a smart contract with Solidity and Remix IDE

  • Implement the ERC-721 token and standards from the OpenZeppelin library : mint NFT

  • Compile and deploy to the Remix Virtual VM and the Goerli Testnet

  • Connect with the Metamask Wallet and get Testnet ETH

2) End to End development with Truffle suite

  • Truffle Suite : installation and create a new project

  • Testing, compiling and deploy to an Ethereum Tesnet (Goerli)

  • Verify and publish your smart contract with the Etherscan API

3) Decentralized Application (DApp) with the React.js library and Bootstrap 5.1

  • Upload images to the IPFS (InterPlanetary File System) with the Pinata API

  • Interact with the Ethereum Blockchain and smart contracts with the Ethers.js library

  • Develop elegant and responsive user interfaces with React.js and Bootstrap 5 (v5.1)

Who is this class for ?

  • Anyone willing to start a career in Blockchain and DApp developpment

  • Anyone interested in Blockchain technologies and its applications

Some things to keep in mind:

  • The focus of this tutorial will be on building the smart contract and not building the frontend.

  • However, the frontend code for an NFT marketplace is available for download and on Github

  • No backend or database is involved in this tutorial

Join me NOW in the class to learn Fullstack Web3 development with a simple and guided example, from start to finish.

-- Sandy




Getting Started: setting up the environment and Tools

The technologies and tools used

Write the NFT smart contracts and implement the ERC-721 standard

discover and use Remix IDE
write a smart contract in Solidity
The OpenZeppelin Library : ERC721 standard
NFT smart contract : mint function
NFT.sol - FINAL {source code}
The Marketplace.sol Smart Contract
Marketplace smart contract : listNFT function
Online ETH Converter
Compile and deploy the smart contract to Remix VM (London)
Marketplace smart contract : buyNFT function
Marketplace.sol - {source code}
Marketplace smart contract : sellNFT function
Marketplace.sol - FINAL {source code}

Connect Metamask Wallet, get ETH tokens, deploy to testnet

Set up Metamask Wallet
IMPORTANT - Copy and save the seed phrase somewhere safe !!
Available Faucets online to get free ETH
Get ETH from faucets
etherscan.io : Ethereum Blockchain Explorer
Deploy to the Goerli Test network

Truffle suite, Web3 and Infura API : new developpement project

Getting Started with Truffle suite : overview & documentation
Getting Started with Truffle suite : installation & create a new project
Create a First Project - commands
install : @truffle/hdwallet-provider
Getting started with INFURA : create a new account and a config file
truffle.config.js {source code}
Compile and deploy to Goerli tesnet
Verify and publish your smart contracts on the Etherscan Blockchain Explorer
Publish and verify contract on etherscan : truffle-plugin-verify and API-key
Download the source code

Create a Truffle project, Compile, Migrate and Publish to etherscan.io

Introduction & Learning Objectives
(GUIDE) - create a new truffle project
create a new truffle project : create and compile
deploy the Marketplace contract
truffle-config.js and secret files
deploy the NFT contract
Publish and verify on the Etherscan Blockchain Explorer
Download the source code

React front end development : create a Decentralized Application (DApp)

React.js : prerequisites, getting started
Download the starter project
Getting started with the Fullstack app : OpenZeppelin, Truffle, etherscan ...
Getting started with the React DApp : react, axios, ethers.js, IPFS

Pinata API : upload to IPFS - Interplanetary File System

Download the starter project + Learning Objectives
Pinata API : create a new account
Pinata API : create an API KEY
Pinata API : connect to the API
Pinata API : pinning a FILE
Pinata API : upload to IPFS
Pinata API : pinning and upload to IPFS {source code}
Pinata Gateway : links and resources

Fullstack DApp : Ethers.js, IPFS, React.js and Bootstrap

Download the starter project + libraries
Ethers : Install & documentation
get contract's instance
utils fonction : balanceInEth
connect Metamask Wallet
interact with the smart contract : mintNFT
interact with the smart contract : listNFT
interact with the smart contract : view NFT
interact with the smart contract : buy Tokens
interact with the smart contract : sell Tokens
all ethers handlers.js
interact with the smart contract : sell Tokens 2/2
final lines of codes and last words
Download the source code


December 11, 2022
there are several cutted things in the course, but with a litle bit od patience you can do it by yourself



Fullstack Web3 - Build an NFT Marketplace DApp on Ethereum - Price chart


Fullstack Web3 - Build an NFT Marketplace DApp on Ethereum - Ratings chart

Enrollment distribution

Fullstack Web3 - Build an NFT Marketplace DApp on Ethereum - Distribution chart
udemy ID
course created date
course indexed date
course submited by