Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: NFT Dutch Auction #187

Closed
julio4 opened this issue May 23, 2024 · 8 comments · Fixed by #204
Closed

Feature: NFT Dutch Auction #187

julio4 opened this issue May 23, 2024 · 8 comments · Fixed by #204
Assignees
Labels

Comments

@julio4
Copy link
Contributor

julio4 commented May 23, 2024

Description

In this example, we will show the implementation of an NFT minting contract using a Dutch Auction, where the minting price follows a decreasing price curve.

Minting Details

  • The seller of the NFT deploys this contract with a startingPrice.
  • The auction lasts for a specified duration.
  • The price decreases over time.
  • Participants can purchase NFTs at any time as long as the totalSupply has not been reached.
  • The auction ends when either the totalSupply is reached or the duration has elapsed.

Criteria:

  • Price is denominated in IERC20 priceToken
  • Include comprehensive tests
  • Deploy the contract on a testnet

Resources:

ODHack

To be eligible for additional rewards, be sure to review and follow the ODHack Common Guidelines and Contributing Guidelines.
Be sure to join the telegram group and introduce yourself.

@julio4 julio4 added the ODHack label May 23, 2024
@princeibs
Copy link
Contributor

princeibs commented May 23, 2024

Can I hop on this?

@muheebyusufbaba1
Copy link

I'll like to work on this

@princeibs
Copy link
Contributor

Kindly drop link to the StarknetByExample telegram group please.
@julio4

@saimeunt
Copy link
Contributor

Hi @julio4, I'm a returning contributor from previous ODHacks (check my OD profile here) and I'd love to handle this issue.

In particular, I have experience porting Solidity code to Cairo as I did in Solidity EIPs to Cairo conversions such as ERC7496 and ERC7498.
I will study the Solidity by Example code and carefully replicate it using Cairo and OpenZeppelin ERC20/ERC721 implementations.
I will replace the Solidity price logic using msg.value with proper Starknet logic using an ERC20 as price token and transfer_from method.
I will include starknet-foundry to write comprehensive tests making sure we have 100% coverage for this example and deploy on Starknet Sepolia.

@julio4
Copy link
Contributor Author

julio4 commented May 23, 2024

Hello everyone! I assigned @princeibs for this time!

@saimeunt
Copy link
Contributor

@princeibs Are you still working on this?
@julio4 Following up on my TimeLock implementation in #201 I'd like to continue working on StarknetByExample and handle this issue (please refer to my previous comment).

@princeibs
Copy link
Contributor

Yeah sure. Almost done.
Will be creating a PR asap.

@julio4
Copy link
Contributor Author

julio4 commented May 30, 2024

Yeah sure. Almost done. Will be creating a PR asap.

Thank you, please open a draft PR as soon as possible!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants