Donation-scheme NTF project
The name is reveiled when public sale starts.
Feature of project
- Donation NFT:
- Distination is determined depending on the attribute type of each NFT.(ex, water -> NPO Ocean protect)
- Marketplace: Opensea
- each time a NFT item is sold, revenue is shared to 3 entities; team, donation, and holders(past NFT holder of that NFT). HolderPass is a provenance of poof-of-hold of the NFT Token. Up to last 7 holders are available to receive the revenue.
Technical feature of NFT
- Dynamic NFT: NFT contract those tokenLevel is able to upgrade depending on the token sold price.
- RevenueBuffer at revenue-sharing:
- max 10% revenue is distibuted to 3 eneities; team, donation, and holders at Opensea's creator earning.
- in case of donation and holders, the RevenueBuffer contract is configured above.
RevenueBufferstores all received ETH on the contract. Provider job posts Request to RevenueBuffer on the item sold event at Opensea.
RevenueBufferdistibutes stored ETH to all requested receipients on being called with
batchWithdraw()which only Provider role wallet can call.
- provider/index.js: Provider job
- watch itemSoldEvent of Opensea
- call request to
- call upgradeTokenLEvel of
- call mint
- make all contract upgradable
Basic Hardhat template
npx hardhat help npx hardhat test GAS_REPORT=true npx hardhat test npx hardhat node npx hardhat run scripts/deploy.js