Getting Started using JavaScript

Metaplex provides two JavaScript SDKs for interacting with Token Metadata NFTs. Both provide full access to Token Metadata functionality - choose based on your project's architecture.

Choose Your SDK

Umi SDK

Built on the Umi framework with a fluent API. Best for projects using Umi.

Kit SDK

Built on @solana/kit with functional instruction builders. Best for new projects.

Comparison

FeatureUmi SDKKit SDK
Package@metaplex-foundation/mpl-token-metadata@metaplex-foundation/mpl-token-metadata-kit
Built onUmi framework@solana/kit
Transaction buildingFluent API with .sendAndConfirm()Functional with instruction builders
Wallet handlingBuilt-in identity systemStandard @solana/signers
Best forProjects already using UmiNew projects using @solana/kit

Quick Example

Create an NFT

import { generateSigner, percentAmount } from '@metaplex-foundation/umi';
import { createNft } 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);

See the dedicated pages for complete setup instructions and more examples.