Getting Started using JavaScript
Metaplex provides a JavaScript library that can be used to interact with NFTs. Thanks to the Umi framework, it ships without many opinionated dependencies and, thus, provides a lightweight library that can be used in any JavaScript project.
To get started, you'll need to install the Umi framework and the Token Metadata JavaScript library.
npm install \
@metaplex-foundation/umi \
@metaplex-foundation/umi-bundle-defaults \
@solana/web3.js@1 \
@metaplex-foundation/mpl-token-metadata
Next, you may create your Umi
instance and install the mplTokenMetadata
plugin like so.
import { createUmi } from '@metaplex-foundation/umi-bundle-defaults'
import { mplTokenMetadata } from '@metaplex-foundation/mpl-token-metadata'
// Use the RPC endpoint of your choice.
const umi = createUmi('http://127.0.0.1:8899').use(mplTokenMetadata())
Then you want to tell Umi which wallet to use. This can either be a keypair or the solana wallet adapter.
That's it, you can now interact with NFTs by using the various functions provided by the library and passing your Umi
instance to them. Here's an example of creating an NFT and fetching the data of all of its onchain accounts.
import { generateSigner, percentAmount } from '@metaplex-foundation/umi'
import {
createNft,
fetchDigitalAsset,
} from '@metaplex-foundation/mpl-token-metadata'
const mint = generateSigner(umi)
await createNft(umi, {
mint,
name: 'My NFT',
uri: 'https://example.com/my-nft.json',
sellerFeeBasisPoints: percentAmount(5.5),
}).sendAndConfirm(umi)
const asset = await fetchDigitalAsset(umi, mint.publicKey)
🔗 Helpful Links: