We wanted to develop a platform that not only turns working out into a gaming challenge but also earns you money based on your performance.

What it does

The app allows users to add money to a pool in a small group of other participants, and based on their comparative rankings, the pool money is split among the participants. This encourages users to stay fit by providing the incentive of winning money in a competitive environment.

How I built it

The app's front end was made using Swift in Xcode, and the back end was programmed in Visual Studio Code with Node.JS in order to streamline the data transfer between the front end and database. The app utilized MongoDB to store data about users and the groups. We utilized the PayPal API in order to allow users to quickly and easily withdraw and deposit money to and from their account.

Challenges I ran into

Asynchronous code gave us a lot of problems, because we had to move data between the front and back end and database very often, leading to many callbacks that caused a lot of problems if we were not careful. Another challenge we came across was trying to design our app in a way that could not be exploited by malicious users. Since the app involves real money, there can be a lot at stake if there are ways for some users to exploit the system, so we had to make sure we had a plan to combat any possible exploitations (e.g very athletic people purposely matching up against newer, unathletic people in order to consistently win money), so we decided on a ranking system to prevent unevenly matched users from taking advantage of one another.

Accomplishments that I'm proud of

What I learned

One of the things I learned about was how to properly split up the development for a mobile app between the front and back end.

What's next for DashCash

We would like to fully implement functionality for a variety of wearable devices, including but not limited to the Apple Watch. We would also like to implement the monetary aspects of making the app profitable, such as advertisements and a small percentage charge for transferring money to a PayPal account.

Built With

Share this project: