GVO Free Mint

a surprise NFT drop with superpowers


  • sound design NFTs (DD) ✅

  • success message with toastify ✅

  • success confetti after the mint ✅

  • message when someone is not on the allow list ✅

  • open a new page that shows NFT minted ("view" page) ✅

  • add Detect Network & Switch if needed ✅

  • deploy on mainnet (deadline Sat 9 July) ✅


  • replace "connect" with rainbow wallet (on testnet for the V2 free mint)

  • add a Dynamic Allowlist (AirTable API) and add PREMINT API

  • deploy on Arweave (example) and add BUNDLER for speed

  • add staking page (on testnet for the V2 free mint)

  • add Burger Menu with " PREMINT / MINT / STAKE / CLAIM / EDITO"

This complete compatibility with the EVM means NFT builders can 1-click deploy their dapps to Optimism while still enjoying all the L1 Ethereum tooling they know and love. Simply put, Optimism’s efficiency and security stems from how the L2 batches and posts transaction data to Ethereum. The Optimism L2 seeing more NFT activity would directly accrue value to Ethereum in contrast to alt-L1s that can silo value to themselves through native fee markets. Optimism-NFT

  • add Custom RPC URL (Infura) and Custom ipfs host (Arweave)

import { ChainId, IpfsStorage, ThirdwebProvider } from "@thirdweb-dev/react";

const KitchenSinkExample = () => {
  return (
      chainRpc={{ [ChainId.Mainnet]: "https://mainnet.infura.io/v3" }}
        name: "Example App",
        description: "This is an example app",
        isDarkMode: false,
        logoUrl: "https://example.com/logo.png",
        url: "https://example.com",
      storageInterface={new IpfsStorage("https://your.ipfs.host.com")}
        { name: "injected", options: { shimDisconnect: false } },
          name: "walletLink",
          options: {
            appName: "Example App",
          name: "magic",
          options: {
            apiKey: "your-magic-api-key",
            rpcUrls: {
              [ChainId.Mainnet]: "https://mainnet.infura.io/v3",
        gasSettings: { maxPriceInGwei: 500, speed: "fast" },
        readonlySettings: {
          chainId: ChainId.Mainnet,
          rpcUrl: "https://mainnet.infura.io/v3",
        gasless: {
          openzeppelin: {
            relayerUrl: "your-relayer-url",
      <YourApp />


  • Add Gas Fee Rates / ETH price

  • Add My Wallet (show NFTs in Wallet)

  • Create Subgraph to show activity on contract

  • Prepare Stake/Claim page

  • Add burger menu top left

  • Add media links top right

  • Improve UI Footer (add Etherscan)


  • Deploy MultiWrap

  • Add Unwrap page

  • Restrict what assets can be wrapped on the contract.

  • Restrict which wallets can wrap tokens on the contract.

  • Restrict what wallets can unwrap owned wrapped NFTs.

Last updated