Setup Requirements

Review the project we’re going to build and its requirements.

We'll cover the following

The project

We’ve used smart contracts to build a little blockchain address book application that stores the contact details of friends and family. For this second project, we’ll design and implement a full-stack remote job board application on a blockchain.

This is an application with a Solidity smart contract as the backend that will process and store remote jobs. This smart contract will:

  • Create and update job creator and applicant profiles.

  • Create and update job offers using creator profiles.

  • Apply to job offers using applicant profiles and withdraw the application if needed.

For the frontend, we’ll be using Next.js to handle features like viewing job lists, creating profiles, and applying to and withdrawing from offers.


A basic knowledge of Solidity is required, as we’ve already discussed. Here are a few more tools you’ll need to complete the project:

  • Remix online IDE: We’ll be writing and testing the smart contracts rapidly using Remix, as we’ve done so far in this course.

  • Node.js and npm: We recommend Node.js >= v12.0.0 and npm >= 6.4.1.

  • Truffle and Ganache: These are very important tools we’ll use to develop and test our smart contract. We’ll cover these in detail later.

  • JavaScript and React: Knowledge of these will be important because they form the backbone of the frontend.

  • Code editor: While we’ll use Remix in the beginning phase, later we’ll switch to traditional code editors for our front-end code.

Get hands-on with 1200+ tech skills courses.