Case Study
Web Charity Platform for Winnerosity
Winnerosity is a web charity platform where everyone can make a small target donation, earn loyalty points, and get a chance to win a cheering prize.
Winnerosity is a web charity platform where everyone can make a small target donation, earn loyalty points, and get a chance to win a cheering prize.
The client came to Limestone Digital with an idea of creating a charity platform. The main essence was to encourage young people to become more socially responsible and give them a little nudge to support those in need – homeless people and animals, exotic creatures in zoos, victims of disasters and epidemics, etc. For a small donation, participants can get a chance to win some prizes, e.g., movie tickets, dinner in a restaurant, game console, or a roller coaster ride. So, we assembled the team of developers to convert the idea into a custom-coded solution.
During the development process, the biggest challenge we faced was shifting project requirements. The product vision kept changing so our team had to manage adjustments that also required extra development time and efforts. Despite this, we managed to deliver the project according to the deadlines while having the product quality as the highest priority.
When all of the requirements were finally defined, the Limestone Digital team started to design, code, and deploy the Winnerosity web application. The app was being developed for two types of participants: affiliates (companies that collect money and provide prizes), and contributors (individuals who make donations). It was decided to incorporate two main aspects to the platform – the ability to raise money for different purposes and to encourage clients to donate by drawing prizes.
SYSTEM ARCHITECTURE
Double-database system for high performance
The architecture of the platform has two databases that deliver data to the server – the usual one and the Redis cache database. The first stores the complete information about the platform, contributors, campaigns, procedures, etc. However, since it might take some time to fulfill user requests, the Redis cache database stores only a limited amount of data that is delivered to users instantly. Such an architecture allows improving user experience via a higher data velocity.