Inspiration

We were inspired by the CGI Leadership Prompt and one of the company's core values of financial strength. As young people, we want to become more financially literate but don't really know where to start. This app would provide a fun way to learn about a variety of financial topics.

What it does

The app provides a number of minigames meant to educate the user on different personal finance topics. By participating in the minigames, the user wins "cash" which they can choose to invest in a number of different ways and watch grow over time. The DebtSmart minigame collects your credit card balance, interest rate, and the amount the user pays down on their credit card monthly, and it returns how long it will take to pay off their credit card debt and how much they would pay in interest.

How we built it

We built the UI in Figma and the DebtSmart minigame in Python.

Challenges we ran into

We ran into challenges with syntax errors in the code and deciding the best way to execute the debt calculations.

Accomplishments that we're proud of

We are proud of getting our code to work and the overall UI design of the app.

What we learned

While doing research for the minigames, we ourselves learned more about financial skills such as calculating debt, interest, and investment strategies.

What's next for Money Matters

Since this app idea is just a prototype, we'd eventually like to develop more minigames to create a complete app.

Debt Calculator Code

print("Welcome to DebtSmart!")
print("Please answer the following questions with numbers only, DO NOT add any special characters or letters.\n")

while True:
    try:
        # Gathering input from user
        startBalance = float(input("Enter your credit card balance owed: "))
        annualInterestRate = float(input("Enter your annual interest rate (%): "))
        monthlyPayment = float(input("Enter amount you are paying per month: "))

        # Get monthly interest rate
        monthlyInterestRate = (annualInterestRate / 12.0) / 100.0
        interestTotal = 0.0
        monthCounter = 0
        balance = startBalance

        # Calculate total interest and months needed to pay balance owed
        while balance > 0:
            interestTotal = float(interestTotal + balance * monthlyInterestRate)  # add to total interest
            balance = float(balance + interestTotal - monthlyPayment)
            monthCounter = monthCounter + 1

        else:
            False
    except ValueError:
        print("Please enter in digits only.")
    finally:
        print("\nIt will take {} months to pay off your credit card debt.".format(monthCounter))
        print("Your total interest paid will be ${0:.2f}.".format(interestTotal))
        break

Built With

Share this project:

Updates