The ZORA Auction House contract is an open and permissionless system that allows any creator, community, platform or DAO to create and run their own curated auction houses for any ERC-721 NFT.
These auctions run as reserve timed auctions, with special emphasis given to the role of curators. If an owner of an NFT chooses to list with a curator, that curator can charge a curator fee and has to approve any auction before it commences with that curators auction house. Anyone is able to run an NFT auction on the protocol with no fee by simply not specifying a curator.
The duration of auction can be set to any length, but if a bid is placed within the last 15 minutes, the countdown will reset back to 15 minutes. This 15 minute reset window can continue as many times as necessary until the timer has ended. In addition, every bid must be 5% higher than the current bid amount.
The source code is available in this GitHub repository.
yarn add @zoralabs/auction-house
npm i -S @zoralabs/auction-house