Scaffold-eth를 활용한 예제 챌린지를 해보겠습니다.
Checkpoint_0: 설치
필수 설치
- Git
- Node (v16 이하 버전)
- Yarn
git clone https://github.com/scaffold-eth/scaffold-eth-challenges.git challenge-0-simple-nft
cd challenge-0-simple-nft
git checkout challenge-0-simple-nft
yarn install
총 3개의 터미널을 열어 각 명령어를 실행합니다.
Hardhat LocalNetwork 실행
yarn chain
React 실행
yarn start
Contract deploy
yarn deploy // 재 배포시 yarn deploy --reset
http://localhost:3000으로 접속합니다.
Checkpoint_1: 가스& 지갑
Grab funds from the faucet을 클릭해서 테스트용 이더를 지급받습니다.
scaffold-eth는 burner 월렛을 사용하기 때문에 메타마스크 지갑 연결을 하시면 안 됩니다!
Checkpoint_2: 민팅
MINT NFT 버튼을 클릭해서 NFT를 생성합니다.
NFT를 생성한 후 시크릿 모드로 새로운 창을 하나 열어 localhost:3000에 접속해줍니다.
지갑 주소가 다른 것을 확인한 후 두 번째 지갑 주소로 NFT를 전송해줍니다.
Checkpoint_3: 배포
packages/hardhat/hardhat.config.js 에 defaultNetwork를 rinkeby로 변경 후 저장해줍니다.
yarn run genearete
yarn account
생성된 주소를 복사한 후 rinkeby_faucet에서 테스트용 이더를 받습니다.
이더를 받았으면 배포를 해줍니다.
yarn deploy
Checkpoint_4: 배송
packages/react-app/src/App.jsx 에서 targetNetwork를 rinkeby로 변경해줍니다.
새로고침 후 다시 MINT NFT 버튼을 눌러 NFT를 생성하면 로컬이 아닌 테스트 네트워크에서 사용 가능하며 실제 지갑으로도 전송 가능합니다.
빌드 후 테스트를 해줍니다.
yarn build
yarn test
Checkpoint_5: 컨트랙트 인증
packages/hardhat/package.json에서 verify에 이더스캔 api를 추가해줍니다. 이더스캔
yarn verify --network rinkeby
'블록체인 > 이더리움' 카테고리의 다른 글
[SpeedRunEthereum] Challenge 2 [Token Vendor] (0) | 2022.05.16 |
---|---|
[SpeedRunEthereum] Challenge 1[Decentralized Staking App] (0) | 2022.05.15 |
[Solidity] fallback 과 payable, 이더 전송 함수 (0) | 2022.05.12 |
[Solidity] Scaffold-Eth 설치하기 (0) | 2022.05.11 |
[Hardhat] 컴파일 및 테스트하기 (0) | 2022.05.07 |