Skip to content

joc-rgb/NFT-Marketplace-Auction

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Grants Round 14 Hackathon - NFT Marketplace Contracts

English auction (highest bidder pays their bid)

Can have a reserve price for if the highest bid is accepted or not

Dutch auction (price descends until someone buys)

Can have a reserve price for when the auction is canceled

Process

  1. A user approves an auction contract to transfer the NFT(s) they would like to sell
  2. The user specifies which NFT to auction off and includes the auction parameters (e.g. starting price, reserve price, expiration date, minimum bid increase for English auctions, price decrease rate for Dutch auctions, date after which the seller can no longer cancel their auction, etc.)
  3. The auction contract transfers that NFT to itself and hold it in escrow while the auction is ongoing
  4. Other users bid on the auction
  5. In the case of English auctions, new highest bids are held in escrow while the last highest bid is sent back to its bidder.
  6. Once the auction has ended, the NFT and funds from the winning bid are transferred to their rightful owner

Contract details

Create auction with parameter info

Set auction starting price, reserved price, startTime, endTime, minIncrease/decreaseRate✅
NFT is transferred and kept in contract address✅

Bid auction

Bid auction with price higher than previous bid✅
Fund is transferred and stored in contract✅
Previous highest bid is returned back to the bidder✅

Claim fund and NFT after auction ended

Fund is claimed by auction creator✅
NFT is claimed by highest bidder✅

Cancel auction

Cancel auction if reserved price not reached✅
NFT is transferred back to auction creator✅
Highest bid is returned back to the bidder✅

Reading/Paginating through all ongoing and ended auctions

Get Auction addresses by specify size and count✅

Get Full Parameter Info of Auction

Read full info of auction in 1 function✅