Course Syllabus for Decentralized eBay Marketplace on Ethereum and IPFS

Course Syllabus for Decentralized eBay on Ethereum and IPFS

This is an intermediate level guided course where you will learn to build a decentralized marketplace similar to eBay. You will build a smart contract where any one can list their products they like to sell in the marketplace. Consumers can browse the products and purchase products. You will also implement an Escrow service which is used by buyers and sellers to protect their transactions and guarantee payment and delivery. This application will be built using the Solidity programming language using the Truffle framework, Javascript and HTML/CSS. IPFS will be used to store images and large text and MongoDB will be used as an offchain solution to implement the product search functionality. Few key libraries that will be used to build the application include web3js, ipfs-api and ethereumjs-util.


This is an intermediate Ethereum development course. Students are expected to have completed our free Ethereum primer course and at least our free beginner course.

Application Architecture

This is a fairly complex application and it is essential to understand all the components of the application and how they work together. You will learn the architecture of the application and the design decisions behind it and the implementation plan.

List Products in the store

You will implement a smart contract with all the functionality for a seller to list products to sell in the marketplace.

IPFS and it's usage

It is not feasible to store large text and images on the blockchain. To get around this issue, we will integrate IPFS in to our application. You will learn the basics of IPFS, detailed installation steps and usage. We will use standard IPFS javascript libraries to integrate IPFS in to our application.

Web Frontend

We make heavy use of Web3js library to implement the frontend. All the smart contract functionality will be exposed through the HTML/JS frontend.

Off Chain solution using MongoDB & Ethereum Events

You will learn the concept of Events in Ethereum and a way to use these events to implement an offchain solution to build the product search functionality. You will also integrate your frontend with the offchain solution to add search functionality to your marketplace.

Escrow Service

There is no central authority in the blockchain world to enforce rules and guarantee payments. To protect buyers and sellers from fraud, we implement the Escrow Service smart contract that will be used to lock the funds in the contract. Funds are released to sellers or refunded to buyers through a 2 of 3 multisig solution (with buyer, seller and a third party arbiter). You will learn the concept of Escrow and multisig in detail and implement the Escrow service through the guided instructions.


There are a number of features/enhancements that can be added to improve our marketplace. There are a number of exercises students can work on to gain more experience and become better blockchain developers.
  • 30 hours of content
  • Support forum
  • Lifetime access
  • Free content updates