Inspiration
Most "earn real money" apps are built on chance: spins, crash multipliers, random draws. We wanted something different, a platform where the only thing that determines whether you win is what you know. At the same time, most quiz apps recycle the same static question banks, which gets stale fast. Combining live, real-money competition with Gemini's ability to generate fresh, adaptive questions at scale felt like the right way to make learning feel as compelling as a live game, without any element of gambling.
What it does
Learners Reward runs continuous, 24/7 knowledge competitions. In the Smart Level, open to everyone, a new 5-question round starts automatically about every 7 minutes; the top 5 scorers in each round split a percentage-based prize pool, with submission speed used only to break ties. Once a player earns 12 badges, they unlock the Premium Level: a self-selected topic, 5 questions, 30 seconds, all-or-nothing for a $5 reward. Every correct answer across both levels feeds a rolling 30-day cumulative score, and the single top scorer each cycle is automatically paid a $100-$500 leaderboard prize. A built-in wallet handles deposits, entry fees, winnings, and instant withdrawal.
How we built it
The app is built in React Native/Expo for cross-platform mobile delivery, with Firebase (Firestore, Cloud Functions, Storage) powering real-time round state, wallet transactions, and score tracking. Gemini is integrated as the core content engine: Cloud Functions call Gemini at the end of every round to generate new, non-repeating multiple-choice questions across subjects, and it also powers in-app player support and personalized post-round learning summaries that flag which topics a player should focus on. We designed the prize logic around a "Buffer Fund" model (fixed guaranteed payouts for small rounds), so early rounds with few players remain rewarding for users even before the percentage-based pool structure becomes self-sustaining around 24+ players.
Challenges we ran into
Getting the reward mechanics right was the hardest part: we needed rounds to always feel worth playing (fixed minimum prizes early on) without ever paying out more than the platform collects, which meant modeling payout curves from 1 to 100+ players before writing a line of payment code. We also had to be deliberate about keeping the game strictly skill-based (score first, speed only as a tie-breaker, no randomness anywhere), since that distinction affects everything from regulatory posture to how the product can be positioned. On the technical side, coordinating synchronized live rounds, Gemini question generation, and instant wallet updates without race conditions or duplicate question delivery took real care in our Cloud Functions design.
Accomplishments that we're proud of
We're proud of shipping a full closed loop: live round orchestration, Gemini-generated questions, scoring, badges, and a working wallet, all running on a continuous 24/7 cycle rather than a scheduled event. We also modeled and validated the Buffer Fund economics across the full 1-100 player range so we know exactly where the platform breaks even and by how much, rather than guessing at pricing.
What we learned
We learned how much Gemini can carry when it's used for more than just Q&A generation. Personalized summaries and real-time support turned out to add as much player value as the questions themselves. We also learned that the line between "skill-based competition" and "chance-based gambling" isn't just a legal footnote; it has to be designed into the scoring and payout logic from day one, not bolted on afterward.
What's next for Learners Reward
Next, we want to expand subject coverage, add school, university, and corporate competition modes, and introduce country-vs-country leaderboards. We're also pursuing jurisdiction-by-jurisdiction legal review for the real-money wallet (licensing, KYC, age verification) ahead of a wider launch, and planning to smooth the payout curve right at the 50-player threshold so profit scales continuously instead of stepping down at that cutover point.
Built With
- custom-jwt
- erc-20
- ethereum
- ethers-js
- firebase
- firebase-auth
- firebase-cloud-functions
- firestore
- gemini
- gemini-api
- git
- google-cloud
- javascript
- node.js
- react-native
- typescript
- web3-js
Log in or sign up for Devpost to join the conversation.