Inspiration

The inspiration behind Raffl stems from our desire to use a decentralized tool to address the issues associated with traditional raffles and lotteries. Unfortunately, we found that no current tools effectively solved these problems with decentralization. Traditional raffles and lotteries often suffer from opacity and centralization, leading to mistrust among participants regarding the fairness and security of the process. Raffl aims to revolutionize this space by leveraging blockchain technology to ensure complete transparency, security, and fairness. By integrating Chainlink Automations and Chainlink VRF for verifiable randomness, we provide a tamper-proof and truly decentralized raffle experience.

What it does

Raffl is a permissionless web3 platform that allows users to create and participate in decentralized raffles and lotteries. The platform supports ERC-20 and ERC-721 tokens, offering flexibility in the types of prizes that can be distributed. Users can customize their raffles by setting entry prices, draw dates, and minimum entry requirements. The results are automated and guaranteed to be fair, thanks to Chainlink VRF, which provides verifiable and unbiased randomness.

How we built it

Raffl was developed on the Ethereum blockchain, utilizing smart contracts to automate and secure the raffle process. Our core technology stack includes Chainlink VRF for random draw functionality and Chainlink Automations for maintaining event schedules. The platform's frontend is designed to be user-friendly, making it easy for both creators and participants to interact with. We also integrated token gating features, allowing raffles to be restricted to specific token holders.

Challenges we ran into

One of the primary challenges we encountered was ensuring the seamless integration of Chainlink VRF and Automations, which are critical for maintaining the platform's fairness and transparency. Another hurdle was designing a user interface that is both intuitive and capable of handling complex operations, such as token gating and prize distribution. Additionally, ensuring the robustness and security of smart contracts was a significant focus. Since Chainlink VRF was picking a random winner and there may be multiple entries per user, we made a refactor of ERC721A to easily "mint" entries for users while gas-optimizing the draw process when the random words is fulfilled (which basically let us pick a random entry number to later associate it to its owner).

Accomplishments that we're proud of

We are particularly proud of successfully implementing Chainlink VRF for verifiable randomness and Chainlink Automations for scheduling, which are crucial for our platform's integrity. The deployment of a user-friendly interface that caters to both novice and experienced web3 users is another milestone. Our smart contracts have been rigorously tested to ensure security and reliability, providing users with peace of mind when participating in raffles.

What we learned

Throughout the development of Raffl, we deepened our understanding of blockchain integrations and the importance of user experience in decentralized applications. We learned valuable lessons in smart contract development, particularly in the areas of security and gas optimization. Our experience has also highlighted the importance of Chainlink as an oracle to provide tamper-proof and truly decentralized smart-contracts.

What's next for Raffl

Looking ahead, we plan to expand Raffl's capabilities by integrating with more supported blockchains to increase accessibility. We're also exploring advanced features such as multi-winner raffles, tiered entry pricing, and enhanced analytics for raffle creators. Additionally, we aim to foster a vibrant community around Raffl, encouraging user feedback and participation to continuously improve the platform. Our goals is to be the best raffle tool in our ecosystem.

Built With

Share this project:

Updates