project screenshot 1
project screenshot 2
project screenshot 3

FortunaPool

A decentralized stablecoin application utilizing Worldcoin for identity verification and Flow blockchain for verifiable random number generation, allowing users to securely deposit USDC, invest in DeFi opportunities, and receive fair and transparent rewards.

FortunaPool

Created At

ETHGlobal Singapore

Project Description

This decentralized stablecoin application leverages cutting-edge technologies like Worldcoin and the Flow blockchain to provide a secure, transparent, and fair way for users to deposit USDC (stablecoin), participate in decentralized finance (DeFi) investment opportunities, and receive rewards.

World ID Integration: A key feature of the system is the integration with Worldcoin, which ensures robust identity verification and prevents Sybil attacks. Verified users benefit from gas subsidies, reducing transaction costs and enhancing the overall user experience. This identity verification layer guarantees that only legitimate users can participate, increasing trust in the reward distribution process.

Random Number Generator (Flow-based RNG): The application uses a Flow-based random number generator (RNG) to ensure fairness and transparency in reward distribution. By leveraging the Flow blockchain, the system generates verifiable randomness, making prize outcomes impossible to manipulate. The integration with Flow ensures that reward distribution is decentralized and tamper-proof, adding an additional layer of security.

Stablecoin Vault: Users deposit USDC into a secure vault managed by a smart contract. Over time, the deposited stablecoins generate yield through decentralized investments managed by the integrated smart contract. The system operates on the ERC4626 tokenized asset standard, ensuring security and compatibility with DeFi protocols.

Investment Management: The deposited USDC stablecoins are invested in DeFi opportunities, generating yield that is distributed back to users as rewards. The vault operates on the ERC4626 standard, ensuring secure management of funds and fair distribution of yield among participants.

The system’s backend is built using Solidity smart contracts for investment management, reward distribution, and identity verification, creating a seamless, secure, and transparent user experience.

How it's Made

This project leverages several technologies to build a robust and secure decentralized prize vault system.

Random Number Generator (Flow-based RNG): The random number generator is based on the Flow blockchain, where randomness is securely and verifiably generated. The prize distribution and the core logic revolve around the Flow ecosystem, ensuring a decentralized, transparent, and fair reward system. This integration with Flow ensures that the RNG cannot be manipulated and adds an additional layer of trust and security.

API Integration (Worldcoin API): We integrated the Worldcoin API for identity verification. Through this API, users’ identities are verified, ensuring that only legitimate users can participate and receive rewards. Additionally, the Worldcoin integration provides gas subsidies, reducing transaction costs for users.

Backend (Golang): The backend is implemented using Golang, chosen for its efficiency in handling concurrent operations and speed. Golang enables us to handle smart contract interactions and cryptographic operations efficiently, ensuring the prize vault runs smoothly and securely.

Smart Contracts (Solidity): The core smart contracts are developed in Solidity, managing investment flows, random number generation, and reward distribution. These contracts are deployed on Ethereum, and the prize vault adheres to the ERC4626 standard for tokenized vaults, ensuring seamless interaction with DeFi protocols.

Prize Pool Logic: The prize pool consists of first, second, and third prizes, where the amount of rewards and the number of winners dynamically change based on the total number of participants and the amount deposited. As long as participants deposit the required amount of USDC to qualify, they are guaranteed to win a prize. The reward distribution is not directly tied to the individual amount deposited, meaning every qualified participant receives a reward.

Metamask Wallet Integration: Users interact with the prize vault through the Metamask browser wallet. Metamask provides a secure and user-friendly way to manage cryptocurrency and facilitates deposits and withdrawals of USDC.

Frontend (React + MobX): The frontend is designed using React for its flexibility and component-based architecture. We used MobX for state management to ensure a responsive and intuitive user experience. The UI allows users to deposit USDC, view their investment status, and track their potential rewards in real-time.

background image mobile

Join the mailing list

Get the latest news and updates