Inspiration
There is nothing fancy about the “Big Why” that Pandora is trying to address, not a unique inspiration behind it. NFT illiquidity has been the elephant in the room since its inception. Many have been trying to offer solutions - NFT lending, NFT instalment, and tokenized NFT to name a few. We have talked among the teammates and we observed there are mainly two actors in this illiquid game: NFT collectors and Risk-takers. Those aforementioned solutions are too complicated for NFT collectors to participate in, and that happens to be one of the most important actors to get onboard. We knew there must be another way to solve this. Pandora surfaced when one of the team members, an NFT collector, complained about how hard it is for him to sell any of his own NFTs. A Blue-chip NFT is not worth selling at the downhill floor price nor do common rank NFTs have any chances of selling out. At a higher price, it is harder to sell; at a lower price, people probably do not care. The other team member is new to the NFT, he suggested he would buy the NFTs from the NFT collector and that the NFTs just need to be shuffled and he will buy one of them. We had fun doing all of the shuffling and betting. At that moment, we realized how much fun it is to be in a game of luck. We were inspired. We decided to bet on bringing ‘fun’ or ‘gamifying experience’ to solve the illiquid problem.
How it works?
To understand how Pandora works, there are two main actors in Pandora’s journey: the “Lootbox maker” and the “Ticket buyer”. The two actors will be illustrated through a 3+1-step Pandora journey for ease of understanding (sell, buy, and exercise + redeem).
Sell : Loot box maker picks his NFTs that he wants to sell. He can choose to create a loot box by choosing the name, setting the ticket price, minimum ticket required, and the expiration period then he can select those NFTs. The loot box will be put up on Pandora’s marketplace page.
Buy : Ticket buyer browses through the marketplace to choose which loot box he wants to buy a ticket from. After purchase, he will get a ticket NFT to use to redeem the prize. He can also sell this ticket NFT on the other NFT marketplace
Exercise : When the expiration date has come, if the overall minimum tickets purchased are met, the prize redeemable process will proceed meaning the NFTs will be transferred to ticket holders and the lootbox maker gets the total ticket sales. Meanwhile, the ticket buyers will randomly get the NFT from the loot box and claim the NFT through the loot box page
Redeem : In contrast, if the overall minimum tickets purchased are not met, the loot box maker can claim back his NFTs in the loot box. This should prevent his concerns about the ownership of the NFTs. The ticket in the ticket buyer's hands will change from the normal ticket to a ‘Refundable ticket’. He can refund back the purchase amount from Pandora. This should make it fair for the game of luck
How we built it
To make the drawing process verifiably random and fully automated. We use Chainlink Keeper to check whether there is any loot box needed to be drawn, then request the random words from Chainlink VRF and use those to draw winners. We also implemented a refund system for when the number of tickets sold does not need a minimum set by the loot box owner.
The tickets are of ERC721 standard. The image is stored on IPFS, and the metadata changes according to the ticket status.
The frontend is developed using Next.js, Moralis, and Tailwindcss. We have also developed a subgraph for loot boxes data querying.
The contracts are currently deployed on Polygon Mumbai, BSC Testnet, and Avalanche Fuji. The site is deployed on IPFS and can be accessed via pandora.on.fleek.co with the help of Fleek.
Challenges we ran into
Communication and technical understandings are the two challenges summing up Chainlink Spring 2022 Hackathon for Pandora Team. Most of the members did not know each other before and meeting only online via Discord voice chat turns out to be a rough journey for the team to pace the workloads. We decided to do more IRL meetings and spent some time with team-building. In the middle of the hack, the dev team explored a lot of concepts on Chainlink features like VRF and Keepers or tools like Subgraphs. The challenge in this space is mainly the understanding, trying it out, and implementing journeys that come with time constraints. Hopefully (or luckily), we went through all that despite a few setbacks.
Accomplishments that we're proud of
We have never understood why Startup founders like to say that building something from the ground up and watching pieces and pieces come together are rewarding in a way that they could not find it elsewhere. Though Pandora is not perfect, seeing it coming into viable product pieces by pieces is an accomplishment we cherish dearly.
What we learned
The context of Pandora’s team lineup is 3 devs and 2 biz that have never worked together before. To state the obvious, we learned how perspectives are viewed through the lens of people with different backgrounds. To state the lesson from ideation, it was pretty much a thorough understanding in anticipating the scenario our products could be used or interpreted. The game theory and the game of luck are being discussed from the creator's point of view, not the lousy whitepaper readers glancing through the TL; DR. To state the lesson from execution, dev teams would need a paper long to list down new things they have learned. Having 2 non-web3 devs and 1 dev with 3 months in web3, we learned the foundational understanding to create some more fancy contributions to the space.
What's next for Pandora
Our demo is Pandora v1 which is in phase 1 in our plan.
To make it more efficient, in phase 2, we want to make a group loot box maker or more than one person can put their NFT(s) per one loot box. Also, we want to expand our domain to games and integration with other marketplaces.
Built With
- chainlink
- hardhat
- ipfs
- keeper
- laika
- moralis
- next.js
- solidity
- tailwindcss
- the-graph
- typescript

Log in or sign up for Devpost to join the conversation.