All Projects

๐ŸŽจ NFT ERC-721 Drop with Performance Testing

ERC-721 generative NFT drop with time-gated minting, whitelist mechanics, and royalty support. Full Hardhat test suite covering mint flows, access control, and metadata. Artillery-based performance tests validate minting endpoint throughput under load.

Blockchain EngineerPersonal / Freelance

Stack

SolidityHardhatTypeScriptOpenZeppelinArtilleryethers.jsIPFS/Pinata

NFT ERC-721 Drop with Performance Testing

๐Ÿ”ญ Overview

A production-ready ERC-721 NFT drop smart contract system with whitelist mechanics, time-gated public mint, royalty support, and a full test suite including Artillery-based API load testing for the minting backend.

๐Ÿ› ๏ธ What I Built

๐Ÿ“œ Smart Contract (Solidity + OpenZeppelin)

  • ๐ŸŽจ ERC-721 with metadata URI management and on-chain/off-chain hybrid reveal
  • โฐ Time-gated minting phases: whitelist mint window โ†’ public mint window, enforced by block timestamp
  • ๐Ÿ“‹ Whitelist mechanics: merkle tree-based allowlist with per-address mint limit
  • ๐Ÿ‘‘ Royalty support: ERC-2981 on-chain royalty standard for marketplace compatibility
  • ๐Ÿ“ฆ Supply management: configurable max supply, per-wallet limits, reserve for team allocation
  • ๐Ÿ‘ฅ Role-based admin controls: MINTER_ROLE, ADMIN_ROLE via OpenZeppelin AccessControl

๐Ÿงช Hardhat Test Suite

  • โฐ Phase transition tests: whitelist โ†’ public mint boundary conditions
  • ๐ŸŒณ Merkle proof validation: valid proof, invalid proof, expired proof, address not in tree
  • ๐Ÿ“ฆ Supply cap enforcement: minting at exactly max supply, attempting to exceed
  • ๐Ÿ‘‘ Royalty calculation tests: ERC-2981 royaltyInfo correctness for various sale prices
  • โ›ฝ Gas optimization tests: batch minting scenarios

๐Ÿ“Š Artillery Performance Testing

  • ๐Ÿงช Load test suite for the minting API backend using Artillery
  • ๐Ÿ“ˆ Simulates concurrent mint requests at varying concurrency levels (10, 50, 100, 500 rps)
  • โœ… Validates API response times, error rates, and throughput under load
  • ๐Ÿ”„ Tests both whitelist mint and public mint endpoints with realistic wallet distributions

๐Ÿ“ Metadata Pipeline

  • ๐Ÿ”ง TypeScript scripts for generating generative metadata from trait layers
  • ๐Ÿ“ค IPFS upload pipeline via Pinata for decentralized metadata storage
  • ๐Ÿ“ฆ Bulk metadata generation supporting 10k+ item collections

โญ Key Highlights

  • ๐Ÿงช Artillery performance testing integrated into the CI pipeline for regression detection
  • ๐ŸŒณ Merkle tree whitelist system with on-chain proof verification
  • ๐Ÿ‘‘ ERC-2981 royalty standard for cross-marketplace royalty enforcement
  • ๐Ÿ“ Complete metadata pipeline from trait generation to IPFS deployment