We wanted to develop a creative and uniquely compelling way to raise funds for charities like Doctors Without Borders. We decided that using incentives for prizes as monetary rewards would be effective motivators in encouraging charity. With this in mind, we built an automated, live bitcoin lottery service integrated in a web application.
How it works
Royale is a web-based bitcoin lottery that directly supports charity. Users simply visit the Royale site, and using their existing bitcoin wallets, enter lottery pools reflecting their desired risk. Once all the entrants for a particular pool have submitted their funds, Royale selects a winner through a 100% random process. Of the $100 worth of bitcoin collected for each lottery, $50 dollars worth goes directly to Doctors Without Borders. The winning players of the lotteries also have the opportunity to donate their share of the winnings to this charity. From a technical perspective, the site is an node server that interacts with the Blockchain wallet API. They facilitate the transactions and we display any updates to the pools live by holding our data in Firebase. Once a pool is filled, half of its total value is donated to charity, and the lucky winning user has the option to keep or donate their half of the winnings.
Challenges I ran into
Building this web application entirely from scratch, we encountered a number of problems along the way to completion. One the biggest challenges involved getting our live-updating, a critical feature of Royale's bitcoin lotteries, to actually update live. To ultimately solve this problem, we took our data out of a Mongo DB database and into a real-time database.
Accomplishments that I'm proud of
We are very proud that our app, Royale, can directly benefit charities and encourages philanthropy in a unique, incentives-minded way.
What I learned
We learned how to integrate the Blockchain API into a web application and service, we learned how to develop and coordinate live bitcoin lotteries, we learned how to sort disparate data on the back-end into a unified and singular front-end for the application.
What's next for Royale
The next steps will include making more charities available for donation through Royale, securing the app to a greater degree, getting an official domain name, greater reporting and notifications for winning, more interactive charts and graphs, and generally making it a more full-fledged web service.