Welcome to πͺNUScentsπͺ, the tailor-made financial tracker for SOC students at NUS. It is optimized for use via a Command Line Interface (CLI) to offer a clutter-free solution for our users to manage and monitor their financial activities.
Make sure you have Java 11 or above installed on your system.
tp.jar).cd into the folder you put the jar file in.Enter the following command to run the program:
java -jar tp.jar
You should see a welcome message as shown below:
Hello from
__ __ __ __ ____ _____ _____ __ __ ________ ____
| \ | | | | |/ / / __| | \ | |__ __|/ /
| \| | | | |\ __\| / | __| \| | | | \ __\
| | | | | \__ | | | __| | | | \__ |
| | |__| |/ | \__| | | | | / |
|__|\___|________|______/ \_____|_____|__|\___| |__| |_____/
---------------------------------------------------------------------------------------------
What can I do for you?
Hint: To view a list of all possible commands, please enter 'help'.
---------------------------------------------------------------------------------------------
allowance /amt AMOUNT, AMOUNT is a parameter that can be used
as allowance /amt 1000.allowance can be used with or without /note./amt and /AMT are the same.food and FOOD are the same.\ and | in the /description and /note field.helpTo view a list of all possible commands, a brief description of their functionality and syntax.
Format: help
Expected output:
---------------------------------------------------------------------------------------------
- `list` :
List all entries.
- `allowance /amt AMT /date DATE /desc DESC [/note NOTE] [/cat CAT]` :
Add an allowance.
- `expense /amt AMT /date DATE /desc DESC [/note NOTE] [/cat CAT]` :
Add an expense.
- `delete INDEX` :
Delete an entry.
- `budget AMOUNT` :
Set a budget amount for expenses.
- `filter CATEGORY` :
Filter by category.
- `view INDEX` :
View entry detail.
- `edit INDEX ENTRY` :
Edit an existing transaction (same format as adding a transaction).
- `exit` :
Exit program.
---------------------------------------------------------------------------------------------
allowanceTo add a new allowance entry to the financial tracker, please adhere to the given format!
π Note
Fields in square brackets[ ]can be omitted.
The categories are case-insensitive, i.e.SALARYandsalaryare the same.
Please refrain from using characters/and|in the/descand/notefield.
Possible categories for allowance are:
Format:
1) allowance /amt AMOUNT /date DATE /desc DESCRIPTION [/note ADDITIONAL_INFORMATION] [/cat CATEGORY]
e.g., allowance /amt 200 /date 30-10-2023 /desc pocket money /note November /cat allowance
Expected output:
---------------------------------------------------------------------------------------------
Got it. I've added this transaction:
pocket money
Now you have 1 transactions in the list.
---------------------------------------------------------------------------------------------
2) allowance /amt AMOUNT /date DATE /desc DESCRIPTION
e.g., allowance /amt 200 /date 30-10-2023 /desc pocket money
Expected output:
---------------------------------------------------------------------------------------------
Got it. I've added this transaction:
pocket money
Now you have 2 transactions in the list.
---------------------------------------------------------------------------------------------
expenseTo add a new expense entry to the financial tracker, please adhere to the given format!
π Note
Fields in square brackets[ ]can be omitted.
The categories are case-insensitive, i.e.FOODandfoodare the same.
Please refrain from using characters/and|in the/descand/notefield.
Possible categories for allowance are:
Format:
1) expense /amt AMOUNT /date DATE /desc DESCRIPTION [/note ADDITIONAL_INFORMATION] [/cat CATEGORY]
e.g., expense /amt 20 /date 30-10-2023 /desc lunch /note pasta /cat food
Expected output:
---------------------------------------------------------------------------------------------
Got it. I've added this transaction:
lunch
Now you have 3 transactions in the list.
---------------------------------------------------------------------------------------------
2) expense /amt AMOUNT /date DATE /desc DESCRIPTION
e.g., expense /amt 20 /date 30-10-2023 /desc lunch
Expected output:
---------------------------------------------------------------------------------------------
Got it. I've added this transaction:
lunch
Now you have 4 transactions in the list.
---------------------------------------------------------------------------------------------
budgetTo add a budget to your expenses.
Note: The budget must be larger than 0 as it does not make sense to set budget as 0.
Format: budget AMOUNT
e.g., budget 200
Expected output:
---------------------------------------------------------------------------------------------
Budget set to:
$200.0
---------------------------------------------------------------------------------------------
deleteTo delete an entry from the financial tracker, which can be either an allowance or an expense.
Format: delete INDEX
e.g., delete 1
Expected output:
---------------------------------------------------------------------------------------------
Noted. I've removed this transaction:
pocket money
Now you have 3 transactions in the list.
---------------------------------------------------------------------------------------------
listTo list all entries in the financial tracker.
Format: list
Expected output:
---------------------------------------------------------------------------------------------
Here are the transactions in your list:
---------------------------------------------------------------------------------------------
S/N TYPE AMOUNT DATE DESCRIPTION NOTE CATEGORY
---------------------------------------------------------------------------------------------
1 Allowance $200.00 30 October, 2023 pocket money - -
2 Expense $20.00 30 October, 2023 lunch pasta FOOD
3 Expense $20.00 30 October, 2023 lunch - -
---------------------------------------------------------------------------------------------
Net Balance = $160.00
---------------------------------------------------------------------------------------------
Initial budget set to = $200.00
Expenses = $40.00
Total expenses are still within budget.
Remaining budget: $160.00
---------------------------------------------------------------------------------------------
filterTo filter entries in the financial tracker by category.
π Note The categories are case-insensitive, i.e.
SALARYandsalaryare the same.
The current supported categories are:
Format: filter CATEGORY
e.g., filter FOOD
Expected output:
---------------------------------------------------------------------------------------------
Filtered transactions in the category FOOD:
---------------------------------------------------------------------------------------------
S/N TYPE AMOUNT DATE DESCRIPTION NOTE CATEGORY
---------------------------------------------------------------------------------------------
1 Expense $20.00 30 October, 2023 lunch pasta FOOD
---------------------------------------------------------------------------------------------
Total amount for FOOD = 20.00
---------------------------------------------------------------------------------------------
viewTo view an entry in the financial tracker, which can be either an allowance or an expense.
Format: view INDEX
e.g., view 2
Expected output:
---------------------------------------------------------------------------------------------
Following are details of the transaction:
TYPE: EXPENSE
DATE: 30 October, 2023
AMOUNT: 20.0
DESCRIPTION: lunch
NOTE: pasta
CATEGORY: FOOD
---------------------------------------------------------------------------------------------
editTo edit an entry in the financial tracker, which can be either an allowance or an expense.
π Note
Fields in square brackets[ ]can be omitted.
The categories are case-insensitive, i.e.FOODandfoodare the same.
Please refrain from using characters/and|in the/descand/notefield.
Format:
1) edit INDEX allowance /amt AMOUNT /date DATE /desc DESCRIPTION [/note ADDITIONAL_INFORMATION] [/cat CATEGORY]
e.g., edit 1 allowance /amt 150 /date 30-10-2023 /desc pocket money
Expected output:
---------------------------------------------------------------------------------------------
Here are the transactions in your list:
---------------------------------------------------------------------------------------------
S/N TYPE AMOUNT DATE DESCRIPTION NOTE CATEGORY
---------------------------------------------------------------------------------------------
1 Allowance $150.00 30 October, 2023 pocket money - -
2 Expense $20.00 30 October, 2023 lunch pasta FOOD
3 Expense $20.00 30 October, 2023 lunch - -
---------------------------------------------------------------------------------------------
Net Balance = $110.00
---------------------------------------------------------------------------------------------
2) edit INDEX expense /amt AMOUNT /date DATE /desc DESCRIPTION [/note ADDITIONAL_INFORMATION] [/cat CATEGORY]
e.g., edit 3 expense /amt 20 /date 30-10-2023 /desc dinner /note noodles /cat food
Expected output:
---------------------------------------------------------------------------------------------
Here are the transactions in your list:
---------------------------------------------------------------------------------------------
S/N TYPE AMOUNT DATE DESCRIPTION NOTE CATEGORY
---------------------------------------------------------------------------------------------
1 Allowance $150.00 30 October, 2023 pocket money - -
2 Expense $20.00 30 October, 2023 lunch pasta FOOD
3 Expense $20.00 30 October, 2023 dinner noodles FOOD
---------------------------------------------------------------------------------------------
Net Balance = $110.00
---------------------------------------------------------------------------------------------
exitTo exit the program.
Format: exit
Expected output:
---------------------------------------------------------------------------------------------
Thank you for using NUScents. Hope to see you again soon!
---------------------------------------------------------------------------------------------
Q: How do I transfer my data to another computer?
A: There are 2 files used for storage, ./data/nuscents.txt and ./data/budget.txt. Copy both files over to the target
computer.
Q: What happens if I modify the storage file ?
A: The application is programmed to handle modification of the storage file, however, no support is guaranteed if you choose to do so. Unexpected behaviour will occur if you modify the storage file in an unsupported way. If a particular transaction entry is corrupted, the program will try to skip it and read the next transaction entry.
| Action | Format, Examples |
|---|---|
| Help | help |
| Add Allowance | allowance /amt AMOUNT /date DATE /desc DESCRIPTION [/note ADDITIONAL_INFORMATION] [/cat CATEGORY] e.g., allowance /amt 200 /date 30-10-2023 /desc pocket money /note November /cat allowance |
| Add Expense | expense /amt AMOUNT /date DATE /desc DESCRIPTION [/note ADDITIONAL_INFORMATION] [/cat CATEGORY] e.g., expense /amt 20 /date 30-10-2023 /desc lunch /note pasta /cat food |
| Add Budget | budget AMOUNTe.g., budget 200 |
| Delete | delete INDEXe.g., delete 3 |
| List | list |
| Filter | filter CATEGORY |
| View | view INDEX |
| Edit | edit INDEX ENTRY e.g., edit 2 allowance /amt 200 /date 30-10-2023 /desc pocket money /note November /cat allowance |
| Exit | exit |