Inspiration

It’s hard to find the time and energy to look for charities to donate to, and even harder to find the funds to donate substantial amounts of money, especially if you aren’t making a stable income. While many people have causes that they feel strongly about and want to support, very few know about specific charities and which will make the best use of their money. RoundUp is an application that allows you to passively donate to your favorite causes by curating a list of charities and organizations that you will love and can trust, and then rounding up your financial transactions to then donate the difference. Whether you are motivated by the money you are donating, or a competitive leaderboard-style network, RoundUp will help you reach your donation goals, without breaking the bank.

What it does

RoundUp starts by allowing the user to set up their personalized experience through logging in and selecting their favorite causes. This helps our text similarity model find the user charities that speak to them, while also adding more charities to their recommendations based on their liked organizations. The main feature of the app is the passive donation, which occurs every time a user makes a transaction (such as through Venmo, Apple Pay, Zelle, credit, etc.). RoundUp uses a donation rounding algorithm we built to “round up” each transaction and donate to causes of the user’s choosing based on their monthly goal and how much they spend on average. RoundUp also features a page with the user’s personal donating analytics, in the form of engaging visuals to display progress, and a leaderboard to compare progress towards the monthly goal with their friends.

How we built it

RoundUp was fully designed in Figma, since we wanted to create a mobile application that was visually appealing, but also intuitive and easy to use. Our app icon and mascots were designed and drawn by one of our team members. The backend was created using React, specifically Node and express backend, and a TensorFlow ML text similarity model was used to find charity recommendations for the users based on what causes and charities they have liked in the past. The Charity Navigator API was used to curate the list of charities our app pulls from.

Challenges we ran into

The biggest challenge we ran into was using machine learning to find the charity recommendations. It was challenging to hook up the API to our app and write an algorithm to make the right recommendations, at the right frequency, but we took the time to find the right resources and understand what we were trying to accomplish before setting off on the project. Additionally, it was very challenging to combine the backend with the frontend, especially because we began by working with React for a website, and our final goal was to create an iOS mobile application. This didn’t end up being feasible in the time we had, so we created a comprehensive Figma demo and a perfectly working backend separately that can showcase the way our app actually works.

Accomplishments that we're proud of

We are immensely proud of the final product we created during this hackathon. The backend is completely functional, and the frontend is visually stunning, with a clear and intuitive workflow. This was the first hackathon for many of our team members, and we feel as though all of us collaborated well from the ideation stage to the final touches on the project.

What we learned

This was the first time any of us had used to design an app from start to finish, so the learning curve was a bit difficult to overcome at first, but after experimenting with the components and the tools Figma has to offer, we feel as though we have an understanding of the fundamental functionalities of the software, and how to use them to create a high-quality demo.

What's next for RoundUp

RoundUp can be expanded in many ways, but the most important next step would be to connect with payment platforms and charities to create the most seamless experience for our users, by making their passive donations occur unconsciously.

Share this project:

Updates