This bounty is no longer available
Web3 DAO | Agoric Logo

NFT Drop Contract

Organization

Agoric

Deadline

over 1 year ago

Status

ENDED

6400 USD

INSTRUCTIONS

NFT Drop Contract

Description

Write a contract which allows users to mint NFTs up to a count specified by the creator (e.g., 10,000) for a price specified by the creator (e.g., 200 IST). Users mint NFT IDs in first-come-first-served manner until the full count has completed.

The contract must allow the contract creator to specify:

The total count of NFTs in the series to be minted

The price per NFT

The start time (or block) of the offering, before which minting cannot occur

Optionally for the creator, a list of whitelisted addresses allowed to mint, with a limit on total number minted per address

Context

Note: Additional context around NFT drops provided here. Not all functionality described below is necessary for this specific bounty.

NFT “drops” have been popularized on Ethereum and other chains. In these drops, an NFT creator will offer a series of NFTs that are tied to their theme, but have differing properties - with the prevalence and desirability of specific properties leading to differing rarities and values for individual NFTs in the series.

For example, all Bored Ape Yacht Club (BAYC) NFTs have a value for the “hat” property, but only 65 have the “Trippy Captain’s Hat,” making apes with Trippy Captain’s Hat rarer and more valuable than average BAYCs - currently the lowest offer for a Trippy Hat BAYC is over twice the ‘floor’ BAYC. Actual properties for the specific NFTs minted are typically only updated after the full minting is complete (not required functionality for this bounty).

At the time of the launch, users will interact with the contract (either through the creator’s dedicated UI or directly in some other manner) to mint one or multiple NFTs at the specified price.

Acceptance Criteria

Functionality in ‘Description’ section is covered

Contract passes Agoric code review

Contract follows Agoric style requirements

Time Estimation

2 weeks

Reward

$6400

Payment will be made in USD (fiat currency) via wire transfer. The developer is responsible for providing their completed tax documents (W9 for US based developers and/or W8 or W8-BEN-E for non-US based developers) and providing their banking details in order to receive payment.

Applicant Assessment Criteria

Important: Please provide a clear workplan for how you will approach this bounty. Use the work plan as an initial demonstration that you would be a good candidate. Bounties will require coordination with the Agoric team, so unfortunately only plans submitted in English will be considered.

Applicants will be assessed based on the following criteria:

  • Issue-specific domain experience

  • Issue-specific technical capability

  • Familiarity with Agoric's platform

  • JavaScript experience

  • Availability and communication

Review Process

Agoric team reviews your submitted workplan on Gitcoin

It is best to join our Discord and post your gitcoin name in the bounties channel, so that we can follow up with you. Otherwise, we will write on your gitcoin profile wall and say hello!

Agoric contacts you to provide reference projects / sample code for engineering review

Introductory call to discuss your plans and expected timeline

You join the Agoric Discord bounties channel (if you haven’t done so already)

Agoric accepts you on Gitcoin and you get started!

References

Example Ethereum NFT Drops:

ERTP documentation on non-fungible tokens:

Existing Agoric NFT Drop contract partially implemented: https://github.com/Agoric/dapp-nft-drop

NFT Drop contract walkthrough: https://youtu.be/MLL9VyfXTLc?t=4263

ABOUT AGORIC

A Proof-of-Stake chain utilizing secure JavaScript smart contracts to rapidly build and deploy DeFi.