We were inspired to develop Cardy by the absence of strong data-driven tools to help people choose a credit card. There are many different tools to help people choose a credit card, however, most have glaring errors. Some of these tools are provided by credit card companies and do not show results from their competition. Others ask many questions but provide very little justification for their final recommendation. Based on an evaluation of areas of spendings of your monthly budget, Cardy provides a recommendation driven by user data and a transparent user experience.
What it does
Cardy separates your monthly spendings into 9 categories and compares your spending profile to the rewards programs of all the credit cards in our database. We calculate the rewards you would have received that month and show you exactly which cards would have earned you the most money.
How we built it
We used an angular front-end and node.js+firebase back-end to create the Cardy technology. We store credit card reward information in our database and use that to calculate rewards for a particular user. Because different cards can have different forms of rewards, all forms of rewards are converted to USD then compared to each other. This way, cashback, points, and airline miles can all be compared to each other. After the rewards are calculated and compared on the back end, the results are sent to the client and displayed.
Challenges we ran into
One of our biggest challenges was finding a reasonable level of generalization when we represent credit card rewards. Rewards plans are very complicated and often hard to compare because of their level of specificity. In the end, we decided to compare cards based on their rewards in 9 categories of spending. Special rewards (TSA precheck, Uber credit, etc. ) were not considered. In a full version of this service, these would be important to implement.
Accomplishments that we're proud of
This being all of our first Hackathons, we're especially proud that we were able to finish and meet all of our minimum deliverable requirements. We were also happy with our ability to collaborate and merge our three workflows together to form a final product.
What we learned
We were happy to have a diverse skill set in our group. This let everyone learn from each other. I was working on our back-end but able to learn some angular from Jasper. Jasper was new to Using travis-CI but able to learn some of the basics while to set up our project. Mert was our Firebase administrator. Jasper and I were both able to learn about integrating projects in firebase from him.
What's next for Cardy
Ideally, we will improve our user experience and the quality of our recommendations. We plan on improving user experience by making it easier for a user to calculate their spending. This could be done by integrating with banks or allowing users to upload a csv (Comma Separated Value) file of their transaction history. We will improve the quality of our recommendations by storing data about more cards, automatically updating that data, and implementing more specific rewards calculations for each card.