A lottery auto generator platform with a reverse lottery as its main feature. Unlike traditional lotteries where one person wins and everyone else loses, in this system one person loses and everyone else wins!
Introducing dLottery, a decentralized application designed to bring new and exciting twists to traditional lottery models. The MVP features two different types of lotteries: The first type is named a Spinner. This is effectively lets users create a reverse lottery. Unlike typical lotteries, where only one lucky person wins, the Spinner can allow everyone to win, except for one or few unlucky people. It also features an NFT Lottery, where the offer creator will specify an NFT collection and allow holders of those NFTs to participate. Future iterations will include other interesting mechanics such as an open-ended prediction market lottery, which would provide users with a unique opportunity to speculate on outcomes. The offer creator would inputs several fields describing the event, and for arbitration, they will declare an address or choose in-house arbitration. Additionally, features will be implemented to provide users with incentives, such as getting an NFT if they fall under that small percentage of people who lose. With its user-friendly interface, transparent and secure design, and potential for big payouts, dLottery is set to revolutionize the way we think about lotteries on the blockchain.
We built this project as a server-less application that interacts directly with the smart contract on the front-end. For the smart contract, we used Solidity and the Remix IDE. For the front-end, we used Material UI and React.js, as well as Hardhat and Microsoft Visual Studio as our development tools.
Using sponsor technologies benefited our project in various ways, such as enabling us to streamline our development process and access additional resources and support.
One notable hacky approach we used in the project was leveraging the loser incentive of receiving an NFT to encourage user engagement, even if they do not win the lottery. This added an extra layer of excitement to the experience and incentivized users to participate, even if they did not think they had a good chance of winning.