This project is a Web3 application that interact with Ethereum Smart Contracts.
It lets user swap tokens using Uniswap exchange liquidity pool and use it to mint NFT token.
- Main page
- Swap token
- Mint NFT
This is a client application that interacts with deployed Smart Contracts.
- React.js - Library for building user interfaces
- Tailwind CSS - CSS framework
- WAGMI - React hooks to interact with wallets and smart contracts. Built on top of Ethers.js
- Swap ether to dedicated token using Uniswap created pool
- Mint NFT token
npm run start
This directory contains Smart Contracts implementations and deployment scripts.
- ERC20 token contract
- ERC721 token contract
- Contract that uses the above and provides additional functionalities
- Swap ether to dedicated token
- Mint an NFT for that token
-
compile:
npm run compile
-
deploy:
npm run deploy-[local|rinkeby]
Before verify step you need to include contract addresses in
arguments.js
file. -
verify:
npx hardhat verify --network rinkeby --constructor-args arguments.js <address>