트러플을 사용하여 NFT 구축 및 개정

게시물 색인:
  • 개요
  • 전제 조건
  • 가나슈 설정

  • 트러플 명령줄 앱 설치
  • NFT ERC721 스마트 계약 구축
  • Revise를 사용하여 NFT 데이터 추가

  • 트러플과 자바스크립트(revise-sdk)를 사용하여 NFT를 구축하는 빠른 가이드입니다.

    전제 조건: 노드 버전 15 이상, NPM 버전 7 이상

    가나슈 설치부터 시작하겠습니다. Ganache은 개발 시스템에서 로컬로 샘플 블록체인을 실행합니다. 이를 통해 NFT 스마트 계약을 구축하고 테스트할 수 있습니다.

    this link을 클릭하여 다운로드 페이지를 방문하십시오. 플랫폼을 선택하고 설치 프로그램을 다운로드합니다. 설치가 완료되면 ganache 앱을 열고 "Quickstart Ethereum"버튼을 클릭합니다. 그러면 Ethereum 블록체인의 시뮬레이션이 시작됩니다. 이제 Truffle에서 NFT 스마트 계약 개발 및 테스트를 시작할 수 있습니다.



    다음으로 Truffle을 설치해 보겠습니다. NPM을 사용하여 트러플 명령줄 앱을 다운로드하고 설정합니다. 터미널에서 npm install truffle -g를 실행합니다. 이 명령이 Truffle 설치를 완료하면 컴퓨터의 모든 폴더에서 Truffle을 사용할 수 있습니다.

    새 디렉토리를 만들고 이름을 truffle-revise-tutorial 로 지정합니다. cd 해당 디렉토리에 들어가면 truffle init 스마트 계약 구축을 시작하는 데 필요한 모든 상용구가 설정됩니다. 스마트 계약을 작성하기 위해 계약 폴더에 새 파일을 만듭니다. 터미널에서 truffle scaffolding 명령truffle create contract ReviseNFT을 실행하여 “ReviseNFT.sol” 파일(스마트 컨트랙트 파일)을 생성할 수도 있습니다.

    방금 만든 파일에 다음 코드를 붙여넣습니다.

    // Let’s start by importing the Openzeppelin ERC-721 template into our file
    // SPDX-License-Identifier: MIT
    pragma solidity ^0.8.0;
    import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
    // Next, let’s add our NFT smart contract and name the NFT token (Dynamic NFT)
    contract ReviseNFT is ERC721 {
        string baseuri = "";
        constructor(string memory _baseuri) ERC721("Dynamic NFT", "dNFT") {
            baseuri = _baseuri;
        }
        // Last but not the least, let’s add functions to enable minting and to enable setting the _baseURI().
        function mint(address to, uint256 tokenId) public {
            _safeMint(to, tokenId);
        }
        function _baseURI() internal view override(ERC721) returns (string memory) {
            return baseuri;
        }
    }
    


    위의 코드 실행npm install @openzeppelin/contracts을 붙여넣기를 완료하면 누락된 종속성을 설치합니다.

    이것은 NFT 스마트 계약의 상용구입니다. 우리는 Openzeppelin ERC721 템플릿을 기본으로 사용하고 상단에 몇 가지 기능을 추가하여 발행을 활성화하고 "_baseuri"를 설정합니다. "_baseuri"를 사용하면 NFT에 데이터(이름, 이미지, 설명, 속성 등)를 추가할 수 있습니다.

    Revise ( https://revise.network )을 사용하여 백엔드를 설정하고 데이터를 NFT에 추가합니다. Revise에서 개발 키를 가져옵니다. https://revise.network을 방문하여 "시작하기"를 클릭하고 계정을 만든 후 헤더에서 "API 키 생성"을 클릭합니다. 키를 생성했으면 키를 복사하여 어딘가에 저장합니다.

    Clone this repo . 이것은 매우 기본적인 스타터 키트이며 revise-sdk 설정이 있습니다. 복제한 후 npm install 를 실행하십시오. index.js를 열고 다음 코드를 붙여넣습니다.

    const { Revise } = require("revise-sdk");
    const AUTH_TOKEN = "...PASTE YOUR AUTH TOKEN HERE...";
    const revise = new Revise({auth: AUTH_TOKEN});
    
    async function run() {
    
        const collectionId = await revise.addCollection("Collection Name", "Collection_URI")
    
        // Collection Name : Use any name you want for your collection (this gets shown in the marketplace))
        // Collection_URI  : Use a unique name (no spaces or special characters)
        //                   this will generate a unique link for your collection
        //                   for e.g. if you choose "myuniquecollection"
        //                   your baseURI wil be "myuniquecollection.revise.link"
        const nft = await revise.addNFT({
        image: 'https://revise-testing.fra1.digitaloceanspaces.com/sample-collection/1.jpg',
        name: 'Star Lord',
        tokenId: '1',
        description: 'This is a test description'
      }, [
        {attack: "80"}, {color: "maroon"}, {stamina: "90"}
      ], collectionID)
    
        console.log(nft)
    }
    run()
    

    AUTH_TOKEN를 Revise에서 생성한 인증 토큰으로 바꿉니다. 위 스니펫에서는 revise-sdk를 가져오고, 인증 토큰을 설정하고, revise-sdk 함수 호출을 실행하는 함수를 설정합니다. 위의 코드에서 우리는 NFT에 대한 컬렉션을 만들고(모든 NFT는 컬렉션에 속합니다. 폴더의 파일로 생각하십시오) 일부 데이터를 NFT에 추가합니다. index.js 파일node index.js을 실행합니다. 이제 첫 번째 NFT를 추가했습니다! 이를 테스트할 수 있습니다. revise.link/p/myuniquecollection/1를 방문하십시오("myuniquecollection"을 이전에 선택한 "collectionURI"로 대체).

    이제 우리가 해야 할 일은 위 스마트 계약의 "_baseuri"를 Revise을 통해 생성한 링크로 바꾸는 것입니다. 첫 번째 NFT를 성공적으로 구축했습니다!

    다음 기사에서는 Ganache와 이더리움 테스트넷에서 구축한 NFT 스마트 계약을 실행하는 과정을 안내합니다. 곧 봐요.

    좋은 웹페이지 즐겨찾기