revenue-sharing-contract
v1.0.1
Published
The revenue sharing contract for Mitama NFT project
Downloads
10
Maintainers
Readme
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.
RevenueBuffer
stores all received ETH on the contract. Provider job posts Request to RevenueBuffer on the item sold event at Opensea.RevenueBuffer
distibutes stored ETH to all requested receipients on being called withbatchWithdraw()
which only Provider role wallet can call.
- provider/index.js: Provider job
- watch itemSoldEvent of Opensea
- call request to
RevenueBuffer
- call upgradeTokenLEvel of
DynamicNFT
- call mint
HolderPassNFT
Future work
- 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