소개

시작하기

Umi 설치

Umi를 사용하려면 Umi와 사용하고 싶은 모든 외부 플러그인을 설치해야 합니다. 또는 특정 플러그인이 필요하지 않다면 대부분의 사용 사례에 적합한 플러그인 세트가 포함된 기본 번들을 설치할 수 있습니다.

참고: 기본 번들이 일부 인터페이스에 web3.js에 의존하므로 해당 패키지도 설치해야 합니다.

필수 패키지

설치하려면 다음 명령을 사용하세요:

npm i @metaplex-foundation/umi
npm i @metaplex-foundation/umi-bundle-defaults
npm i @solana/web3.js@1

라이브러리 작성자용

종속성을 대폭 줄이기 위해 Umi의 인터페이스를 사용하고자 하는 라이브러리 작성자는 메인 Umi 라이브러리만 설치하면 됩니다. 최종 사용자가 여러 버전의 Umi 라이브러리를 사용하지 않도록 다음 명령을 사용하여 peer 종속성으로 설치하는 것을 적극 권장합니다:

npm i @metaplex-foundation/umi --save-peer

그런 다음 Umi의 Context 객체나 그 일부를 사용하여 함수에 필요한 인터페이스를 주입할 수 있습니다.

테스트용

또한 Umi는 최종 사용자와 라이브러리 작성자 모두가 코드를 테스트하는 데 도움이 될 수 있는 테스팅 번들을 제공합니다. 예를 들어, 실제 스토리지 제공업체에 의존하지 않고 코드를 안정적으로 테스트할 수 있도록 UploaderInterfaceDownloaderInterface 모두에 사용되는 MockStorage 구현이 포함되어 있습니다.

npm i @metaplex-foundation/umi
npm i @metaplex-foundation/umi-bundle-tests

Umi 기본사항

이 섹션에서는 Umi를 시작하는 데 필요한 기본 단계를 다룹니다:

RPC에 연결

Solana는 다양한 목적을 제공하는 서로 다른 클러스터(예: Mainnet-beta, Devnet, Testnet, ...)를 가지고 있으며, 각각은 RPC 요청을 처리하는 전용 API 노드를 가지고 있습니다.

Umi를 선택한 클러스터에 연결하는 것은 RPC 엔드포인트가 첫 번째 인수로 전달되므로 umi 인스턴스를 생성하는 것만큼 간단합니다.

참고: Mainnet에 연결하는 경우 제한 사항으로 인해 공용 엔드포인트(https://api.mainnet-beta.solana.com) 대신 Solana RPC 제공업체의 전용 RPC 엔드포인트를 사용하는 것이 권장됩니다.

Umi 인스턴스를 생성하려면 createUmi 함수를 가져와서 RPC 엔드포인트를 제공하세요. 선택적으로 두 번째 인수로 커밋 레벨을 지정할 수도 있습니다.

import { createUmi } from '@metaplex-foundation/umi-bundle-defaults'
const umi = createUmi('<RPC-Endpoint>', '<Commitment-Level>')

지갑 연결

Umi를 설정할 때 트랜잭션을 전송하기 위해 지갑을 사용하거나 생성해야 합니다. 이를 위해 테스트용 새 지갑을 생성하거나, 파일 시스템에서 기존 지갑을 가져오거나, 웹 기반 dApp용 walletAdapter를 사용할 수 있습니다.

참고: walletAdapter 섹션은 이미 walletAdapter를 설치하고 설정했다고 가정하고 Umi에 연결하는 데 필요한 코드만 제공합니다. 포괄적인 가이드는 이것을 참조하세요.

참고: Umi 인터페이스는 Signer의 두 인스턴스를 저장합니다: 앱을 사용하는 identity와 트랜잭션 및 스토리지 수수료를 지불하는 payer. 기본적으로 signerIdentity 메서드는 대부분의 경우 신원이 지불자이기도 하므로 payer 속성도 업데이트합니다.

자세히 알아보려면 Umi Context Interfaces 단락을 참조하세요.

프로그램 및 클라이언트 등록

경우에 따라 Umi는 사용하고자 하는 프로그램이나 클라이언트를 지정하도록 요구합니다(예: Core Asset을 민팅할 때 Umi에게 Core 프로그램을 사용하도록 지시해야 함). Umi 인스턴스에서 .use() 메서드를 호출하고 클라이언트를 전달하여 이를 수행할 수 있습니다.

mpl-token-metadata 클라이언트를 Umi에 등록하는 방법은 다음과 같습니다:

import { mplTokenMetadata } from '@metaplex-foundation/mpl-token-metadata'
const umi = createUmi('https://api.mainnet-beta.solana.com')
.use(mplTokenMetadata())

참고: 다음과 같이 .use() 호출을 연결하여 여러 클라이언트를 등록할 수도 있습니다:

import { mplTokenMetadata } from '@metaplex-foundation/mpl-token-metadata'
import { mplCandyMachine } from '@metaplex-foundation/mpl-candy-machine'
const umi = createUmi('https://api.mainnet-beta.solana.com')
.use(mplTokenMetadata())
.use(mplCandyMachine())
Previous
개요