POAPs

POAP Creation Process

Overview

A Proof of Attendance Protocol (POAP) is a unique digital collectible issued as a Non-Fungible Token (NFT) that represents attendance or participation in an event or activity. Each POAP is stored on the blockchain, ensuring ownership, uniqueness, and security. This document outlines the detailed steps involved in creating a POAP, focusing on the key elements of metadata, file uploads, and blockchain interactions.


Key Components of POAP Creation

  1. Metadata

    • Name: The title or name of the POAP. It should reflect the event or activity it represents (e.g., "Tech Conference 2024").

    • Symbol: A short identifier, usually 3-5 characters, representing the POAP (similar to a ticker symbol in stocks).

    • Description: A brief explanation or story behind the POAP. This could include details about the event, location, or significance.

    • Max Supply: The total number of POAP tokens to be minted. This defines how many people can claim the POAP.

    • Attributes: Optional attributes or traits that make the POAP more informative or unique (e.g., rarity, event-specific details).

  2. File Upload

    • POAPs usually come with an associated image, poster, or video to make them visually appealing. These assets are uploaded to a decentralized storage solution like IPFS.

    • Primary File: Typically, a PNG or JPEG image representing the POAP. This is what users will see when they view or share their POAP.

    • Secondary File: An optional media file, often used if the POAP contains a video or animation that needs a preview or poster image.

  3. Blockchain Network

    • POAPs can be minted on different blockchain networks, each offering varying transaction fees, speeds, and environmental impacts. Common networks include:

    • Users must choose the appropriate network based on their needs, balancing cost, speed, and user accessibility.


Detailed POAP Creation Process

  1. Creating the Metadata

    • The first step in POAP creation involves preparing the metadata, which serves as the digital description of the POAP. The metadata file is typically in JSON format and includes the following fields:

      • name: The name of the POAP.

      • symbol: The unique symbol representing the POAP.

      • description: A short text description of the event or achievement associated with the POAP.

      • image: The URL to the image file uploaded to IPFS or another decentralized storage system.

      • attributes: Optional attributes that add further context, such as event dates, locations, or custom traits.

      • tags: Optional tags that help categorize the POAP (e.g., “exclusive,” “conference”).

  2. Uploading Files to IPFS

    • Once the metadata is ready, the associated media files (e.g., images or videos) are uploaded to the InterPlanetary File System (IPFS). IPFS is a decentralized storage solution that ensures the file remains accessible and immutable. When the file is uploaded, an IPFS hash (CID) is generated, which acts as a unique identifier for retrieving the file.

    • The media files are included in the metadata using their IPFS hashes.

  3. Minting on the Blockchain

    • The next step is minting the POAP on the blockchain, which involves the following key actions:

      • Smart Contract Interaction: A smart contract is invoked to create the POAP as a token on the blockchain. Smart contracts define the rules for how the token can be transferred, claimed, or owned.

      • Wallet Signing: To authorize the minting transaction, the creator (event organizer) signs the transaction using their crypto wallet (such as MetaMask, Ledger, or any Web3 wallet). This signature confirms the creation of the POAP.

      • Transaction Confirmation: Once the transaction is signed and submitted, it is broadcast to the blockchain network. The transaction needs to be confirmed by the network (via mining or staking, depending on the network) before the POAP is officially minted.

      • Gas Fees: Blockchain transactions require a fee, known as gas, which compensates miners or validators for processing the transaction. The gas fee varies depending on the network and its current congestion.

  4. Distributing POAPs

    • After minting, the POAP tokens are distributed to the participants or attendees of the event. There are multiple ways to distribute POAPs:

      • Claim Links: Unique URLs or QR codes that participants can use to claim their POAPs. These links direct users to a platform where they can claim the token using their wallet.

      • Batch Distribution: For large events, organizers may automatically airdrop the POAPs to the attendees' wallets.

      • Manual Claiming: Users can manually claim their POAP by entering a unique code or interacting with a smart contract.

  5. Tracking and Management

    • Once distributed, the POAPs are fully owned by the participants, and ownership can be verified via blockchain explorers. Event organizers can monitor the distribution and ownership of POAPs through blockchain analytics tools.

    • Ownership Proof: Since POAPs are NFTs, ownership is verifiable on the blockchain, ensuring that the token cannot be counterfeited or duplicated. Event organizers can also track how many POAPs were claimed and by whom.


Blockchain Considerations

  1. Gas Fees and Network Selection

    • Choosing the right blockchain network is essential for balancing cost and speed. Ethereum is the most secure but comes with higher fees, while Polygon offers lower costs at the expense of slightly lower decentralization. The selected network impacts the user experience during the POAP claiming process.

  2. Smart Contract Security

    • POAP creation relies on secure smart contracts that manage the minting, claiming, and transfer of tokens. It is crucial to use well-audited contracts to avoid vulnerabilities or exploits that could affect the POAP distribution.


Error Handling in POAP Creation

  1. File Upload Failures

    • File upload issues may arise due to network connectivity or IPFS errors. In such cases, retrying the upload is often necessary, and the system should handle failed uploads gracefully by providing feedback to the creator.

  2. Transaction Failures

    • Blockchain transactions can fail if gas fees are insufficient, the network is congested, or the smart contract encounters an error. Error messages should inform the creator of the issue, allowing them to adjust gas settings or try again later.

  3. Minting and Distribution Errors

    • POAP minting might fail if the user’s wallet is not properly funded, or if there’s an issue with the signing process. Proper error messaging and recovery strategies (e.g., retry options) should be in place to handle these cases.

GraphQL Queries & Mutations

https://wallet.staging.lemonade.social/graphql

  1. poapSignMessage Query

    • Fetches a message for the user to sign, which is required for minting the POAP.

    • Variables: POAP input (metadata), network.

  2. createPoap Mutation

    • Sends the signed message along with the metadata to mint the POAP on the selected blockchain network.

    • Variables: POAP input, network, signature.

  3. PoapModified Subscription

    • Subscribes to changes in the POAP minting state. It provides real-time updates on the status of the minting process (e.g., PENDING, CONFIRMED).

    • Variables: POAP input, network.


Conclusion

The process of creating a POAP involves generating metadata, uploading media files, interacting with smart contracts, and distributing the tokens to participants. Each step must be carefully executed to ensure the POAP is minted successfully, and all participants can claim their token securely and efficiently. By leveraging decentralized storage and blockchain technology, POAPs provide a reliable and verifiable method of proving participation in events.

Last updated