우리 의 첫 NFT 시장 을 세우는 것 은 신비로운 과정 으로, 견고한 글 한 줄 도 쓰지 않았다🖖

제너럴 모터스 동료들!이제 2022년.😻, 웹3에 들어간 그 해.어느 날 아침,Hashnode가 Web3.0에서 Third Web으로 2022년 첫 hackathon을 포기한 것이 올해에 놀라운 시작이 아니었음을 알아차렸다.왜 더 기다려야 합니까? 이번 해킹 대회를 위한 요리를 봅시다.
그 전에 웹3 초보라면 블록체인, NFT, NFT 시장이 무엇인지 알고 싶을 것이다.걱정 마. 내가 응원할게.
⛓️ 블록체인이란?
블록체인을 한 마디로 설명하기는 어렵지만, 한번 해볼게요.

Blockchain is a public database(ledger)📒 that is updated and shared across many computers(nodes) in a network.


👀 NFT란 무엇입니까?
NFT는 대체할 수 없는 기호화폐를 대표한다.잠깐만, 이건 아무런 의미가 없잖아, 그렇지?내가 대체할 수 없다고 말할 때, 이것은 독특하고 다른 동류가 없다는 것을 의미한다는 것을 알고 있다.
비트코인은 대체할 수 있다. 왜냐하면 당신이 하나의 기호화폐로 다른 기호화폐를 교환할 때, 당신이 얻은 것은 같은 기호화폐이기 때문이다. 이것은 이전과 다르기 때문이다.
그러나 우리가 대체할 수 없다고 말할 때, 이것은 당신이 완전히 독특한 기호화폐로 다른 대체할 수 없는 기호화폐와 거래를 한다면, 당신은 다른 기호화폐를 얻을 수 있다는 것을 의미한다.
🤔 NFT 시장은 무엇입니까?
시장은 창작자와 수집자의 시장이나 집합점으로서 공통된 플랫폼이다.창작자는 시장에 와서 그들의 NFT 판매를 열거하고, 수집가는 이 열거된 NFT를 구매한다.
🤷‍♀️문제.
과거에는 사람들이 전통 경매에서 실물 내용을 검증할 수 있는 것처럼 주어진 예술품이 복제품이 아닌 원작이었다는 것을 검증할 수 있는 사람이 거의 없었다.
우리가 이미 알고 있는 바와 같이 블록체인은 하나의 공공 분류 계정에 거래 역사를 포함하고 이 분류 계정은 분산되어 있어 변경할 수 없다. 그 목적은 자신의 방식으로 모든 디지털 내용을 유일무이하게 하는 것이다.비전문가적인 방식으로 우리는 블록체인에 있는 독특한 디지털 내용의 표기화가 NFT를 만들고 있다고 말할 수 있다.
우리는 한 줄의solidity 코드를 작성하지 않은 분산된 시장 응용 프로그램을 구축했다. 만약solidity를 작성하지 않는 것이 좋은 점이 있다고 생각한다면,solidity는 훌륭한 스마트 계약을 작성하는 데 사용되는 엄격한 유형의 프로그래밍 언어라는 것을 알려주겠다.스마트 계약을 작성해 이더리움 네트워크에 배치하는 데 사용되는 새로운 언어다.우리들 중 많은 사람들이 작문에 있어서 그다지 편하지 않다👩🏼‍💻스마트 계약의 견고성과 모든 기본과 중요한 구성 부분을 이해하고 NFT를 위해 화폐를 만들거나 다른 목적을 위해 자신의 스마트 계약을 작성한다.
그렇다면 한 사람이 계약을 하기 싫지만 놀라운 웹3 DAPP를 구축하고 싶다면 무엇을 해야 하는가🙇‍♂️. (🥁감사합니다.제3망이 왔다.
🌐제3망
ThirdWeb은 스마트 계약, SDK와 UI 구성 요소를 제공하는 포털 사이트로 창설자, 개발자 등이 이 구성 요소를 프로젝트/응용 프로그램에 통합할 수 있다.여기에서 웹 3과 관련된 모든 도구를 얻을 수 있고 놀라운 Dapp를 구축할 수 있습니다.
ThirdWebSDK, 프로젝트, 모듈을 사용하면 DApp의 백엔드 부분에 너무 많은 관심을 기울일 필요가 없습니다.우리는 통합에만 전념한다. 이것은 모든 전방 개발 분야의 초보자들에게 매우 쉽다.
💡영감.
우리는 OpenSea, Rarible 등 놀라운 NFT 시장의 계발을 받았다.
⚡이것이 바로 오술의 용무의 땅이다
아티스트는 자신의 디지털 콘텐츠를 NFT로 제작해 블록체인에 저장해 수집가들이 구매할 수 있는 NFT 시장이다.
live demo
우리는 암호화된 지갑을 가지고 있는 것부터 시작할 것이다.권장 설치Metamask🦊

우리는 암호화 지갑을 통해thirdweb에 로그인하여 멍메이를 우리의 시장을 위한 프로젝트와 모듈을 만드는 네트워크로 설정합니다.
현재 주소로 NFT 마케팅 모듈을 만들었습니다.일부 권한을 설정하면 thirdweb SDK를 통해 스마트 계약을 사용할 수 있습니다.
Nextjs 응용 프로그램에 ThirdWebSDK를 설치합니다.
//Instantiate 3rdweb SDK
const rpcUrl = "https://rpc-mumbai.maticvigil.com";
const privateKey = process.env.NEXT_PUBLIC_PRIVATE_KEY;

const wallet = new ethers.Wallet(
privateKey,
ethers.getDefaultProvider(rpcUrl)
);

const market = new ThirdwebSDK(wallet).getMarketplaceModule(
MARKETPLACE_ADDRESS
);

NFT를 만들 때 사용할 모듈을 정의합니다. NFT 모듈 주소와 출시 및 구매에 필요한 시장 모듈 주소가 필요합니다.
// assign the smart contract address
const NFT_MODULE_ADDRESS = "0x0C8fe5019D3B3BaC3B9e0878080C898518E02060";

// Instantiate NFT Collection module
const nft = new ThirdwebSDK(wallet).getNFTModule(NFT_MODULE_ADDRESS);

지금은 당신의 디지털 자산을 다른 주소로 이전할 때가 되었다
// Minting the NFT asynchronously

import { ThirdwebSDK } from "@3rdweb/sdk";
import { ethers } from "ethers";

export default async function mint(req, res) {
const rpcUrl = "https://rpc-mumbai.maticvigil.com";

const privateKey = process.env.NEXT_PUBLIC_PRIVATE_KEY;

const NFT_MODULE_ADDRESS = "0x0C8fe5019D3B3BaC3B9e0878080C898518E02060";

const { account, name, decription, image } = await req.body;
console.log(req.body);
const wallet = new ethers.Wallet(
privateKey,
ethers.getDefaultProvider(rpcUrl)
);

// initialize the SDK and get the NFT Collection module
const nft = new ThirdwebSDK(wallet).getNFTModule(NFT_MODULE_ADDRESS);
await nft
.mintTo(account, {
name: name,
decription: decription,
image: image,
})
.then((metadata) => {
console.log(metadata);
res.send(JSON.stringify(metadata));
})
.catch((e) => console.log(e));
}

명세서에 대해 우리는 두 모듈의 주소가 필요하다.

// Declaring the NFT Collection module address
const NFT_MODULE_ADDRESS = "0x0C8fe5019D3B3BaC3B9e0878080C898518E02060";

// Declaring the MarketPlace module address
const MARKETPLACE_ADDRESS = "0x229b1f789506dbea2052f8423a780b1be1c16f21";

// Initialize market module by passing in the module address

const market = new ThirdwebSDK(wallet).getMarketplaceModule(
MARKETPLACE_ADDRESS
);

너는 시장에서 너의 조폐NFT를 열거할 수 있다
// the listingId of the listing you want to fetch data for
import { ThirdwebSDK } from "@3rdweb/sdk";
import { ethers } from "ethers";

export default async function list(req, res) {

const rpcUrl = "https://rpc-mumbai.maticvigil.com";
const privateKey = process.env.NEXT_PUBLIC_PRIVATE_KEY;

const NFT_MODULE_ADDRESS = "0x0C8fe5019D3B3BaC3B9e0878080C898518E02060";
const MARKETPLACE_ADDRESS = "0x229b1f789506dbea2052f8423a780b1be1c16f21";
const TOKEN_ADDRESS = "0x0000000000000000000000000000000000000000"; //MATIC Mumbai token address

console.log(privateKey);

const { tokenOffer, tokenId } = await req.body;

console.log(req.body);

const wallet = new ethers.Wallet(
privateKey,
ethers.getDefaultProvider(rpcUrl)
);

const market = new ThirdwebSDK(wallet).getMarketplaceModule(
MARKETPLACE_ADDRESS
);

await market
.createDirectListing({
assetContractAddress: NFT_MODULE_ADDRESS,
buyoutPricePerToken: ethers.utils.parseUnits(tokenOffer, 18),
currencyContractAddress: TOKEN_ADDRESS,
startTimeInSeconds: Math.floor(Date.now() / 1000),
listingDurationInSeconds: 60 60 24,
tokenId: tokenId,
quantity: 1,
})
.then((data) => {
console.log(data);
res.send(JSON.stringify(data));
})
.catch((error) => {
console.log(error);
});
}

🥳우우!!우리는 이미 우리의 디지털 자산을 만들어 다각형 블록체인에 열거했고, 그 어떠한 줄의solidity 스마트 계약, 즉thirdweb도 쓰지 않았다✨.
이 놀라운 시장을 만들기 위한 기술 창고를 보여줄 때가 됐어요.🙈
📚 TechStack 사용
프레임워크 및 서비스

  • NextJS - 프런트엔드용

  • Material UI - 웹 사이트 스타일 디자인용

  • thirdweb - 사전 제작된 스마트 계약을 획득하는 데 사용
  • 도서관.

  • ether.js - 이더리움 블록체인 및 생태계와의 상호작용에 사용

  • axios - 브라우저와 노드가 Promise 기반 HTTP 클라이언트입니다.js

  • ipfs-http-client - IPFS 구현을 위한 JavaScript HTTP RPC API 클라이언트 라이브러리입니다.
  • 👯‍♂️ 팀과 협력자
    백엔드, API/SDK 통합 및 웹3 관련 기능을 담당하는 Sneha Maurya와의 협력 관계 유지✌️.
    🚀 배치하다
    전체 어플리케이션 배포Vercel🏃🏽‍♀️ 가보세요.
    🌐 링크 및 리소스
  • 현장 프레젠테이션ARCANE
  • Github 저장소 링크 - Github-NFTMarketplace
  • 트위터에 연락 - @sneha kushw와
  • 🤖 미래의 가능성
  • Dell의 맞춤형/기존 통화 토큰 마켓
  • 을 사용하여 출시 NFT 구매
  • 에 NFT를 주조하는 판세가 증가했다.
  • 저희 사이트를 방문하기 위해 더 많은 암호화 지갑을 추가합니다.
  • 본 블로그 사용Blogtiple 게시

    좋은 웹페이지 즐겨찾기