tp

Money Tracker: A Team Project for TIC4001

View on GitHub

User Guide

Introduction

Money Tracker is a CLI application that allows users to keep track of their income and expenses. Users can record their inflows and outflows of money and then view monthly reports of these movements of money.

Quick Start

  1. Ensure you have Java 11 or above installed in your Computer.
  2. Download the latest MoneyTracker.jar here.
  3. Copy MoneyTracker.jar to the folder you want to use as the home folder for Money Tracker.
  4. Navigate to the home folder for Duke on your CLI program.
  5. Launch Money Tracker by running the command java -jar MoneyTracker.jar.
  6. Type the command in the CLI program and press Enter to execute it.
    Some example commands you can try:
    • addcate lunch: Adds an expense category.
    • listcat /te: Lists all expense categories.
    • adde /a3.50 /cFood /d2020-09-20 /eLunch with boss.: Adds an expense.
    • list /te /m2020-09 /cFood: Lists all Food expenses in Sep 2020.
    • report 2020-09: Displays summary report for Sep 2020.
  7. Refer to Features below for details of each command.

Features

Notes about the command format:

Viewing help: help

Shows the URL of the user manual.

Format: help

Example of usage: help

Expected outcome:

Please refer to this online user guide:
https://ay2021s1-tic4001-2.github.io/tp/UserGuide.html

Adding an income category: addcati

Adds an income category. Income category is used for classifying incomes. E.g. SALARY, DIVIDEND, INTEREST.

Format: addcati INCOME_CATEGORY

Example of usage: addcati salary

Expected outcome:

Got it! I have added this income category:
  [I] SALARY
  Now you have 1 categories in your list.

Adding an expense category: addcate

Adds an expense category. Expense category is used for classifying expense. E.g. FOOD, RENT, ENTERTAINMENT.

Format: addcate EXPENSE_CATEGORY

Example of usage: addcate Food

Expected outcome:

Got it! I have added this expense category:
  [E] FOOD
  Now you have 2 categories in your list.

Listing all income / expense categories: listcat

Shows a list of all income and/or expense categories.

Format: listcat [/tTYPE]

Example of usage: listcat /te

Expected outcome:

Here are your expense categories:
  1. [E] FOOD
  2. [E] RENT
  3. [E] ENTERTAINMENT

Example of usage: listcat

Expected outcome:

Here are your categories:
  1. [I] SALARY
  2. [I] DIVIDEND
  3. [E] FOOD
  4. [E] RENT
  5. [E] ENTERTAINMENT

Editing an income / expense category: editcat

Edits a specified income or expense category.

Format: editcat INDEX /nNEW_NAME

Example of usage: editcat 1 /nSalary

Expected outcome:

Noted! I have edited this income category: 
   From [I] SALARIES to [I] SALARY

Deleting an income / expense category: deletecat

Deletes a specified income or expense category.

Format: deletecat INDEX

Example of usage: deletecat 5

Expected outcome:

Noted! I have removed this expense category:
  [E] ENTERTAINMENT
  Now you have 4 categories in your list.

Adding an income: addi

Adds an income.

Format: addi /aAMOUNT /cINCOME_CATEGORY [/dDATE] [/eDESCRIPTION]

Example of usage: addi /a9000 /cSalary /d2020-09-01 /eGiven $4000 bonus!

Expected outcome:

Got it! I’ve added this income:
    [I] SALARY $9000.00 on 01 Sep 2020 (Given $4000 bonus!)
    Now you have 1 transactions in your list.

Adding an expense: adde

Adds an expense.

Format: adde /aAMOUNT /cEXPENSE_CATEGORY [/dDATE] [/eDESCRIPTION]

Example of usage: adde /a3.50 /cFood /d2020-09-20 /eLunch with boss.

Expected outcome:

Got it! I’ve added this expense:
    [E] FOOD $3.50 on 20 Sep 2020 (Lunch with boss.)
    Now you have 2 transactions in your list.

Listing incomes / expenses: list

Shows a list of incomes / expenses.

Format: list [/tTYPE] [/mMONTH] [/cCATEGORY]

Example of usage: list /te /m2020-09

Expected outcome:

Here are your expense records for 2020-09:
  1. [E] RENT $500 on 01 Sep 2020
  2. [E] FOOD $10.00 on 18 Sep 2020 (Dinner at McDonalds’)
  3. [E] FOOD $3.50 on 20 Sep 2020 (Lunch with boss.)

Example of usage: list

Expected outcome:

Here are your transactions:
  1. [I] SALARY $5000.00 on 01 Aug 2020
  2. [E] RENT $500 on 01 Aug 2020
  3. [I] SALARY $9000.00 on 01 Sep 2020 (Given $4000 bonus!)
  4. [E] RENT $500 on 01 Sep 2020
  5. [E] FOOD $10.00 on 18 Sep 2020 (Dinner at McDonalds’)
  6. [E] FOOD $3.50 on 20 Sep 2020 (Lunch with boss.)

Example of usage: list /te

Expected outcome:

Here are your transactions:
  1. [E] RENT $500 on 01 Aug 2020
  2. [E] RENT $500 on 01 Sep 2020
  3. [E] FOOD $10.00 on 18 Sep 2020 (Dinner at McDonalds’)
  4. [E] FOOD $3.50 on 20 Sep 2020 (Lunch with boss.)

Example of usage: list /m2020-09

Expected outcome:

Here are your transactions:
  1. [I] SALARY $9000.00 on 01 Sep 2020 (Given $4000 bonus!)
  2. [E] RENT $500 on 01 Sep 2020
  3. [E] FOOD $10.00 on 18 Sep 2020 (Dinner at McDonalds’)
  4. [E] FOOD $3.50 on 20 Sep 2020 (Lunch with boss.)

Example of usage: list /cSALARY

Expected outcome:

Here are your transactions:
  1. [I] SALARY $5000.00 on 01 Aug 2020
  2. [I] SALARY $9000.00 on 01 Sep 2020 (Given $4000 bonus!)

Example of usage: list /te /m2020-09 /cFOOD

Expected outcome:

Here are your expense records for 2020-09:
  1. [E] FOOD $10.00 on 18 Sep 2020 (Dinner at McDonalds’)
  2. [E] FOOD $3.50 on 20 Sep 2020 (Lunch with boss.)

Editing an income / expense: edit

Edits a specified income or expense.

Format: edit INDEX [/aAMOUNT] [/cCATEGORY] [/dDATE] [/eDESCRIPTION]

Example of usage: edit 1 /a500 /cDIVIDEND /d2020-10-21 /eFrom Singtel

Expected outcome:

Noted! I have edited this income: 
   From [I] SALARY $4000.00 on 20 Oct 2020 to [I] DIVIDEND $500.00 on 21 Oct 2020 (From Singtel)

Deleting an income / expense: delete

Deletes a specified income or expense.

Format: delete INDEX

Example of usage: delete 5

Expected outcome:

Noted! I have removed this expense:
    [E] FOOD $10.00 on 18 Sep 2020 (Dinner at McDonalds’)

Clearing all data: clear

Clears all incomes / expenses and income / expense categories.

Format: clear

Example of usage: clear

Expected outcome:

Noted! I have cleared all data.

Setting monthly budget: budget

Sets monthly budget.

Format: budget AMOUNT

Example of usage: budget 5000

Expected outcome:

Got it! I have set your monthly budget to this amount:
   $5000.00

Viewing monthly report: report

Shows a report that summarises the incomes and expenses for a specified month.

Format: report

Example of usage: report

Expected outcome:

Here is your report:
Income for last 6 months (Highest to lowest):
  [I] 2020-09 $27597.40
  [I] 2020-06 $4344.00
  [I] 2020-05 $5666.00
  [I] 2020-10 $4000.00
  [I] 2020-08 $6000.00
  [I] 2020-07 $8880.00

Income for last 6 months (Highest to lowest):
  [E] 2020-09 $531.00
  [E] 2020-06 $650.00
  [E] 2020-05 $660.00
  [E] 2020-10 $577.00
  [E] 2020-08 $570.00
  [E] 2020-07 $550.00

Format: report MONTH

Example of usage: report 2020-09

Expected outcome:

Here is your transactions for 2020-09 :
Total Income: $27597.40
Total Expense: $31.00
Balance: $27566.40

This month has 30 days.
Average Expense Per Day: $1.03

Highest Income transaction: 
  [I] SALARY $9000.00 on 1 Sep 2020 (Given $4000 bonus!)

Highest Expense transaction: 
  [E] DRINK $9.50 on 20 Sep 2020 (Lunch with boss.)

Income Category by Frequency:
  [I] HONGBAO: 5
  [I] SALARY: 3

Expense Category by Frequency:
  [E] DRINK: 4
  [E] FOOD: 2

Income Category by Amount:
  [I] SALARY $27000.00
  [I] HONGBAO $597.40

Expense Category by Amount:
  [E] DRINK $24.00
  [E] FOOD $7.00
____________________________________________________________________ 

Exiting the program: exit

Exits the program.

Format: exit

Example of usage: exit

Expected outcome:

Bye! Hope to see you again soon.

Saving the data

There is no save command because any change to the data will be automatically saved.

FAQ

Q: How do I transfer my data to another computer?

A: Go to Money Tracker’s root folder in the current computer. Copy the data folder and paste it into the Money Tracker’s root folder in the new computer. Click Yes if the system prompts you for confirmation of overwriting.

Command Summary