⚙️ Built using NextJS, RainbowKit, Hardhat, Wagmi, Viem, and Typescript.
- ✅ Contract Hot Reload: Your frontend auto-adapts to your smart contract as you edit it.
- 🪝 Custom hooks: Collection of React hooks wrapper around wagmi to simplify interactions with smart contracts with typescript autocompletion.
- 🧱 Components: Collection of common web3 components to quickly build your frontend.
- 🔥 Burner Wallet & Local Faucet: Quickly test your application with a burner wallet and local faucet.
- 🔐 Integration with Wallet Providers: Connect to different wallet providers and interact with the Ethereum network.
Before you begin, you need to install the following tools:
- Node (>= v18.18)
- Yarn (v1 or v2+)
- Git
To get started, follow the steps below:
- Clone this repo & install dependencies
git clone https://github.com/monad-developers/scaffold-eth-monad.git
- Open the project directory and install dependencies
cd scaffold-eth-monad && yarn install
- Setup
.env
file for Hardhat:
Make a copy of .env.example
in packages/hardhat
folder, name it .env
and enter the respective values
DEPLOYER_PRIVATE_KEY=
MONAD_RPC_URL=
MONAD_CHAIN_ID=
MONAD_EXPLORER_URL=
- Deploying smart contracts on Monad:
Once the .env
file is setup, you can now run the below command in your terminal.
yarn deploy
This command deploys a test smart contract to the Monad testnet network. The contract is located in packages/hardhat/contracts
and can be modified to suit your needs. The yarn deploy
command uses the deploy script located in packages/hardhat/deploy
to deploy the contract to the network. You can also customize the deploy script.
- Setup
.env
file for Next.js app (optional):
Make a copy of .env.example
in packages/nextjs
folder, name it .env
and enter the respective values
NEXT_PUBLIC_WALLET_CONNECT_PROJECT_ID=
- On a second terminal, 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
.
What's next:
- Edit your smart contract
YourContract.sol
inpackages/hardhat/contracts
- Edit your frontend homepage at
packages/nextjs/app/page.tsx
. For guidance on routing and configuring pages/layouts checkout the Next.js documentation. - Edit your deployment scripts in
packages/hardhat/deploy
- Edit your smart contract test in:
packages/hardhat/test
. To run test useyarn hardhat:test
Visit our docs to learn how to start building with Monad.
To know more about Scaffold-ETH features, check out their website.