Skip to content

A Java Swing application that allows the user to determine their optimal credit card based on their personalized spending

Notifications You must be signed in to change notification settings

alexproskiw/JavaCreditCardOptimizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Credit Card Optimizer

A Java project by Alexander Proskiw

Credit Cards

Application Purpose:

According to the Bank of Canada, 9 in 10 Canadians own a credit card. Most of these cards provide some type of reward, such as getting cashback or aeroplan points for every dollar you spend.

The purpose of this application is to:

  • Allow the user to create a list of credit cards they are interested in;
  • View and modify the credit cards in this list; and
  • Get a recommendation for the best credit card optimized to their personal monthly spending.

The optimized recommendation will account for the difference in value between reward types by converting each reward type to an equivalent $ value.

Application In Action

Here is an image of what it looks like to use the application

Project Rationale

This project is of interest to me because for years I simply had a basic credit card from my bank. But recently, I discovered that based on my current spending I could get hundreds of dollars in rewards more if I had a different credit card from a different bank.

When I first started assessing other credit card options, I utilized excel. However, it was a very tedious process, and begged to be automated. Hence, the idea for this Credit Card Optimizer application was born.

User Information/Stories

This application will be used by people who want to keep track of multiple different credit cards that they are considering getting. In addition, the application will be used be people who want to optimize their credit card choice by minimizing fees while maximizing rewards.

Key user stories that will be implemented in this application include:

  • As a user, I want to be able to add/remove credit cards to/from a list of credit cards I'm considering getting. At minimum, a credit card will have a name, annual fee, and reward rate.
  • As a user, I want to be able to select a credit card from the list of credit cards and view/modify its details.
  • As a user, I want to be able to enter my monthly credit card spending.
  • As a user, I want to be able to receive a recommendation of the credit card that will give me the highest reward value based on my monthly spending.
  • As a user, I want the option to save the changes made to my credit cards, rewards, and spending information to file.
  • As a user, I want the option to load my saved credit cards, rewards, and spending information from file.

Disclaimer and limitations:

  1. Credit cards often carry high interest rates. You should avoid carrying a balance whenever possible.
  2. The purpose of this application is not to encourage you to spend more just to earn more rewards. It is not worth spending money you don't have just to earn a few extra dollars in rewards.
  3. For the sake of simplicity and equal comparison, this project focuses solely on the rewards earned through regular spending. Limited time offers associated with specific credit cards such as signup bonuses have not been considered. Similarly, less tangible perks such as airport lounge access and VIP status have not been accounted for.

References:

About

A Java Swing application that allows the user to determine their optimal credit card based on their personalized spending

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages