Skip to main content

How to build a basic dApp with Scaffold-ETH

In this guide, you will learn how to use Scaffold-ETH 2 to quickly build a new dapp project.

Requirements

Before you begin, you need to install the following tools:

  • Node (>= v18.18)
  • Yarn (v1 or v2+)
  • Git

Get funds on Monad Testnet

You will need funds on Monad Testnet in order to deploy smart contracts, you can get funds from the Monad Faucet.

Working with Scaffold-ETH

Scaffold-ETH can have two different solidity development frameworks: Foundry and Hardhat.

In this guide you can choose between Foundry and Hardhat.

Clone the scaffold-monad-foundry repo

git clone https://github.com/monad-developers/scaffold-monad-foundry.git

Open the project directory and install dependencies

cd scaffold-monad-foundry && yarn install

Start your local blockchain node

yarn chain

Deploy your smart contract to your local blockchain node

yarn deploy

This command deploys YourContract.sol to your local blockchain node. The contract is located in packages/foundry/contracts and can be modified to suit your needs.

The yarn deploy command uses the deploy script located in packages/foundry/deploy to deploy the contract to the network. You can also customize the deploy script.

Start your NextJS app

yarn start

Visit your app on: http://localhost:3000.

You can interact with your smart contract using the Debug Contracts page. You can tweak the app config in packages/nextjs/scaffold.config.ts.

Deploy your smart contract to Monad Testnet

yarn deploy --network monadTestnet

This command deploys YourContract.sol to Monad Testnet. The contract is located in packages/foundry/contracts and can be modified to suit your needs.

Verify your smart contract on Monad Testnet

yarn verify --network monadTestnet

This command verifies YourContract.sol on Monad Testnet.

Next steps

  • Explore the Debug Contracts page to interact with your deployed contract.
  • Modify YourContract.sol to build your own functionality.
  • Learn more about Scaffold-ETH.