Skip to main content
This guide demonstrates how to create NFTs on the SOON using the Metaplex Foundation’s UMI framework, MPL Token Metadata program, and Pinata for IPFS storage.

Prerequisites

Before you begin, make sure you have:
  • Node.js installed
  • A funded wallet on SOON testnet
  • Pinata account for IPFS storage

Setting up Pinata

  1. Visit Pinata Cloud and create an account
  2. Once registered, go to API Keys section
  3. Create a new API key with the permissions you need
  4. Save your JWT token and Gateway token
  5. Create a .env file in your project root:

Implementation

Let’s break down the code that creates NFTs on SOON:

Setting up the Wallet

Creating NFT Metadata

Uploading to IPFS using Pinata

Creating the NFT

Running the Code

  1. Install dependencies:
  1. Set up your environment variables in .env file
  2. Replace the placeholder values:
    • Your wallet’s secret key
    • Your NFT metadata
    • Your Pinata gateway
  3. Run the script:

Output

After successful execution, you’ll see:
  • Your wallet balance
  • IPFS upload confirmation
  • Metadata URI
  • Transaction signature
  • NFT mint address

Security Considerations

  • Never commit your .env file or expose your secret keys
  • Store sensitive information securely
  • Ensure your wallet has sufficient SOON tokens for transactions

Network Selection

The code is configured for SOON testnet. For different networks, update the RPC URL:
  • Devnet: https://rpc.devnet.soo.network/rpc
  • Testnet: https://rpc.testnet.soo.network/rpc

Additional Resources