10. Airdrop Tool

D3fenders NFT Airdrop Tool

Overview

The D3fenders NFT Airdrop Tool is a self-custody, visual application for distributing NFTs to large recipient sets across Solana and EVM-compatible networks, including Avalanche custom L1s (subnets).

The tool is designed to be easy to use, guided, and adaptive, adjusting its workflow based on the network a founder is operating on.

All transactions are signed locally in the user’s wallet. Private keys, seed phrases, and signing authority never leave the user’s device.


Why This Tool Exists

NFT projects shouldn’t require custom scripts, dev time, or complex tooling just to distribute assets.

The D3fenders NFT Airdrop Tool is designed to be visual, intuitive, and flexible, while adapting automatically to the capabilities of each chain.

Different networks support different levels of infrastructure. Instead of forcing one rigid workflow, this tool adjusts:

  • Full automation where infrastructure exists

  • Manual controls where it doesn’t

  • Clear UI instead of hidden assumptions

The goal is simple: make advanced NFT operations accessible to anyone, not just developers.

When founders can operate confidently through a clear interface, they move more deliberately, avoid risky shortcuts, and create a more secure environment overall.

Manual workflows are not a fallback. They are a deliberate capability.


Supported Networks

Solana

  • Mainnet-beta

    • Automatic NFT discovery via Helius

EVM Networks

Network
Chain ID
NFT Discovery

Ethereum

1

Automatic (Alchemy)

Polygon

137

Automatic (Alchemy)

Arbitrum

42161

Automatic (Alchemy)

Avalanche C-Chain

43114

Automatic (Alchemy)

Avalanche Fuji Testnet

43113

Manual Entry

Custom Avalanche L1s

User-defined

Manual Entry

Pre-configured Avalanche L1s

  • Dexalot (432204)

  • Beam (4337)

  • XANA Chain (8888)

  • MELD (333000333)

  • LOCO Legends (9393)

Custom L1s can also be added by providing:

  • Chain ID

  • RPC URL

  • Native currency details

  • Block explorer URL


Supported Token Standards

Solana

  • Legacy Metaplex NFTs (v1 / v2)

  • Programmable NFTs (pNFTs) with rule set support

  • MPL Core Assets

EVM

  • ERC-721 — Standard NFTs

  • ERC-1155 — Semi-fungible NFTs with quantity support

The tool automatically applies the correct transfer logic based on the token standard.


How It Works

Airdrop Workflow

The airdrop process follows a guided, step-by-step flow:

  1. Connect Wallet — Solana or EVM

  2. Select Collection — When automatic discovery is available

  3. Select NFTs — Individual or bulk selection

  4. Upload Recipients — CSV or manual entry

  5. Choose Assignment Mode — Sequential or random

  6. Review Assignments — Clear preview of all transfers

  7. Execute Transfers — Wallet-signed transactions

  8. View Results — Completion summary with transaction links

The interface adapts automatically based on the connected network.


Manual Asset Entry (Subnets & Testnets)

On networks without reliable NFT indexing (Avalanche Fuji, Avalanche L1s), the tool switches to Manual Asset Entry mode.

This mode is intentional and clearly communicated in the UI.

Manual Asset Entry allows users to:

  • Enter NFT contract addresses directly

  • Specify token IDs and quantities

  • Verify ownership via direct RPC calls

  • Optionally scan token ID ranges

This enables NFT distribution on any EVM network, even when third-party indexing is unavailable or incomplete.


Recipient CSV Format

Recipient data is provided via CSV. Files are parsed client-side only.

Supported Headers

  • wallet_address, walletaddress, address, wallet, recipient

  • quantity, amount, qty, count (optional, defaults to 1)

Example

Validation Includes

  • Chain-specific address validation

  • Duplicate detection

  • Maximum 10,000 recipients

  • Unicode and homograph attack protection


Assignment Modes

Sequential (In Order)

NFTs are assigned in the order they are selected, matching the CSV order.

Random

NFTs are shuffled using the Fisher-Yates algorithm before assignment.


Transfer Mechanisms

Solana Transfers

Solana transfers use the Metaplex UMI framework:

  • pNFTs with rule sets and compute budgeting

  • Core Assets via mpl-core

  • Legacy NFTs via standard Metaplex transfers

All transactions are built first, signed in the wallet, and then sent sequentially.


EVM Transfers

The tool automatically selects the safest transfer method per chain.

Multicall3 Batching (Preferred)

  • Up to ~50 transfers per transaction

  • One-time setApprovalForAll per collection

  • Used on major networks where Multicall3 is deployed

Direct Transfers (Automatic Fallback)

  • Used on custom Avalanche L1s and testnets

  • One transaction per transfer

  • Uses standard safeTransferFrom

Multicall availability is detected at runtime by checking for deployed bytecode.


Security Model

Self-Custody

  • Wallet-signed transactions only

  • No server-side signing

  • No key storage

Approval Scoping

  • Per-collection approvals only

  • No blanket permissions

  • Approvals can be revoked after completion

Input Validation

  • Client-side CSV parsing

  • Strict address validation

  • No silent fallbacks

Transaction Safety

  • User can cancel at any time

  • Failed transfers are surfaced clearly

  • Success confirmed via on-chain events


Technology Stack

Layer
Technology

Frontend

Next.js 14, React 18, TypeScript

Styling

TailwindCSS

State

Zustand

Solana

@solana/web3.js, Metaplex UMI

EVM

ethers.js v6

CSV

PapaParse

Wallets

EIP-6963 (EVM), Solana Wallet Adapter


Limitations

  • Avalanche L1s require manual asset entry

  • Fuji testnet does not support automatic discovery

  • Solana pNFTs cannot be batched

  • Max 10,000 recipients per CSV

  • Subject to RPC rate limits on high-volume sends


FAQ

Why do I need to approve Multicall3? Multicall3 allows batching transfers into fewer transactions to reduce gas costs. It is a widely used, audited utility contract.

What happens if a transfer fails? Failures are tracked and reported. You can retry them in a new session.

Can I send multiple NFTs to the same wallet? Yes. Each CSV row is processed independently.

How do I add a custom Avalanche L1? Use the subnet selector to add the chain ID, RPC URL, native currency, and explorer.

Last updated