Skip to content

codestates/BEB-ON-DeepSea

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BEB-05-ON-DeepSea

프로젝트 Flow

  1. ERC-721 스마트 컨트랙트를 컴파일+배포+Verify 합니다.
  2. React에서 사용자 지갑과 연결합니다.
  3. React에서 민팅할 NFT 정보를 입력받습니다.
  4. 입력된 정보는 NFT.Storage 모듈을 통해 IPFS에 JSON 형식으로 tokenURI가 저장되고, NFT Minting이 완료됩니다.
  5. 서버(express)에서는 주기적으로 Ethereum Ropsten Network로 RPC Call을 보냅니다. 받아온 정보는 JSON 형식으로 저장되어 있기 때문에 axios로 요청 후 파싱하여 DB(mongoDB)로 저장됩니다.
  6. React에서 /alltoken로 GET 요청을 보내 현재 발행되어 있는 모든 NFT들을 받아와 렌더링 합니다.
  7. 서버에서는 DB에 저장되어 있는 NFT 정보를 React로 전송합니다.

구현 목표

  1. Bare-Minimum(완료)

    • 지갑 연결하기
    • 컨트랙트 내 NFT 디스플레이
    • NFT 민팅
  2. Advanced

    • NFT Sell & Buy

실제 구현 화면

전체 NFT 화면

NFT 정보 입력

힘들었던 점

  • 프로젝트 진행 도중 Infura에서 지원하던 IPFS 서비스가 종료되면서 IPFS로 tokenURI를 보내는 방법을 우회해야 해서 시간이 많이 걸림