One common problem among our team was the ability to achieve goals. These goals were feasible, but were not reached due to a lack of motivation. Also, we, being fortunate enough to live in Silicon Valley, have opportunities that many others across the globe don’t have. We wanted to make something that could potentially help those who do not have access to technology. Thus, striving to combine motivation and donation, we created Donation and Motivation Service, or DMS for short.
What It Does
A user sets a goal, a time limit, and a value online through our website. The value is the amount of money he/she will donate to charity if he/she do not complete the goal before the set deadline. In this system, motivation is both increased and maintained, and if he/she genuinely cannot achieve the goal, it will go towards a good cause. Specifically, that good cause is an established organization called "Computers 4 Africa", in which they use funds to ship computers to African schools for use. Also, through a social aspect of our product, users can draw inspiration from other fellow ambitious users through a real-time chat service. The service is also mobile friendly. Lastly, users get a kick out of our service through the tone of sarcasm throughout the experience.
How We Built It
We separated our project into two servers with the idea of having microservices. One server serves as a front-end and the other provides a back-end API with database operations. On the backend side, we ran Node.js as well as Express to create routes and endpoints for the frontend to access. For storing the data we used a lightweight and flexible npm module called LowDB, which essentially functions as a JSON file. On the front end side, we built a React application using Redux as a state machine.
For the processing of money, we utilized Stripe’s API to ensure secure transaction through credit card. In the chat server, we utilized AngularJS to process user data and messages, and PubNub API to stream the data in realtime.
Challenges We Faced
Accomplishments That We’re Proud Of
We are very proud of the way our website turned out aestetically. It is very pleasing to the eye, and it took a long time to develop the styles through CSS.
Instead of having everything on one server we were able to use microservices. This let us split our team into back and front end and work on each part separately making us far more efficient than if we had used only one server.
What We Learned
What's Next for DMS
We believe a lot of potential lies in this idea. We want to expand and improve our chat room, building it into even more of a social network, in addition to connecting it to social media apps such as Facebook and Instagram. Although it focuses on short-term goals at the moment, it can grow to incorporate long-term goals, bigger goals such as studying for the SAT in 6 months or losing 20 pounds in a year, with higher donation stakes. Lastly, it can grow to utilize hardware for users to physically and quantitatively track certain goals, such as motion sensors that add to the accuracy of fitness goals.