## Goal Create a flow for distributing hypercerts with a predefined set of creators and claims ## User stories - [x] As a coordinator, I want to be able to 'reserve' hypercerts for a given set of contributors - [x] As a developer, I want to be able to use the APP to create and store allowlists for hypercert minting - [ ] As a user, I want to be able to find a reserved hypercert and claim it useing the app - [ ] As a user, I want to be prompted in the app to claim allocated hypercerts ## Technicals ### Store allowlist - Create array with arrays of value pairs: [[address, fraction],...] - Generate Merkle root and proofs for arrays: https://github.com/OpenZeppelin/merkle-tree - Call contract and store merkleRoot with totalUnits and URI to get claimID: https://github.com/Network-Goods/hypercerts-protocol/blob/dev/src/HypercertMinter.sol#L57 - Store tree and proofs in BE datastore in connection to claimID ### Claim allowlist - User provides wallet address - User identifies claimID to mint - BE queries datastore for proofs JSON related to claimID - If found, provide proofs - Send mint request with proofs to contract: https://github.com/Network-Goods/hypercerts-protocol/blob/dev/src/HypercertMinter.sol#L49
Goal
Create a flow for distributing hypercerts with a predefined set of creators and claims
User stories
Technicals
Store allowlist
Claim allowlist