FoodNotes User Guide
1. Introduction
Welcome to the User Guide of FoodNotes!
Ever find yourself forgetting the delightful dishes you savored? Hungry for a way to recall your favorite food experiences? FoodNotes has the solution.
FoodNotes is a quick, simple and beautiful food diary made specifically for you, NUS student foodies. With FoodNotes, you can add stalls that you want to keep track of and manage your reviews for them.
This application is optimised for use via a Command Line Interface (CLI). This means that you operate the application by typing commands into a Command Box. If you are fast at typing, FoodNotes can help you manage your food reviews faster than other Graphical User Interface (GUI) applications; GUI applications allow users to interact with the application through graphical icons such as buttons.
FoodNotes is available for the Linux, Unix, Windows and Mac OS operating systems.
Table of Contents
- Introduction
-
About the User Guide
2.1 Navigating the User Guide
2.2 Reading the User Guide
2.2.1 Terminology related to the GUI
2.2.2 Icons
2.2.3 Command Syntax and Usage
2.3 Input parameters
-
Quick Start
-
Features
4.1 General Features
4.1.1 Viewing helphelp
4.1.2 Exiting the applicationexit
4.1.3 Clearing the databaseclear
4.2 Stall Management
4.2.1 Listing all stallslist
4.2.2 Viewing a stallview-stall
4.2.3 Adding a stalladd-stall
4.2.4 Deleting a stalldelete-stall
4.2.5 Editing a stalledit-stall
4.2.6 Reviewing a stallreview-stall
4.2.7 Deleting a stall reviewdelete-stall-review
4.3 Stall Sorting
4.3.1 Sorting stalls by locationsort-stalls-location
4.3.2 Sorting stalls by ratingsort-stalls-rating
4.3.3 Sorting stalls by pricesort-stalls-price
4.4 Stall Finding
4.4.1 Finding stalls by namefind-by-name
4.4.2 Finding stalls by locationfind-by-location
4.4.3 Finding stalls by itemfind-by-item
4.5 Item Management
4.5.1 Viewing an itemview-item
4.5.2 Adding an itemadd-item
4.5.3 Deleting an itemdelete-item
4.5.4 Editing an itemedit-item
4.5.5 Reviewing an itemreview-item
4.5.6 Deleting an item reviewdelete-item-review
-
Command Summary
5.1 General Commands
5.2 Stall Management Commands
5.3 Stall Sorting Commands
5.4 Stall Finding Commands
5.5 Item Management Commands
-
FAQ
2. About the user guide
This section is your guide to the user guide! It gives you all the information you need to easily navigate and get the most out of the user guide.
2.1 Navigating the user guide
If you are a first time user:
- The Quick Start section provides instructions for you on how to get started.
- Once you have set up FoodNotes, you can check out the Layout Screen section to get familiar with the different components of FoodNotes. To learn the basics of using FoodNotes, head over to the Features section.
If you are an experienced user:
You can refer to the Command summary section for an overview of FoodNotes’ commands.
2.2 Reading the User Guide
Before you jump into the upcoming sections, take a moment to familiarise yourself with the technical terms, icons, and syntax used throughout this document. This subsection contains all the essential information you need to understand the content better.
2.2.1 Terminology related to the Graphical User Interface (GUI)
Let’s introduce you to FoodNotes’ user interface! The following image showcases the different components and their respective functions in FoodNotes.
What the main components do:
-
Command Box: This is where you type your commands.
-
Result Display: This is where FoodNotes displays the result of your commands.
-
Left and Right Display: This is where FoodNotes displays the information of the page that you are viewing.
2.2.2 Icons
This section will run you through the icons used in this guide.
Icon | Meaning |
---|---|
An information icon signals that the enclosed text contains notes about how to use FoodNotes. | |
A light bulb icon signals that the enclosed text contains tips that you might find useful. | |
A warning icon signals that the enclosed text contains warnings about potentially dangerous actions you should be cautious of. |
2.2.3 Command Syntax and Usage
Since FoodNotes is a CLI application, knowing how to use commands is crucial. The following subsection will guide you on how to read and use commands in FoodNotes. All commands in FoodNotes follow similar formats as illustrated in the table below and examples will be provided to help you understand their usage.
Technical Term | Meaning |
---|---|
Command word | The first word of a command. It determines the action that FoodNotes should perform. |
Prefix | The prefix precedes a parameter. It is used to identify the type of the parameter that is being input. |
Parameter | The information following the prefix. This information is then used to update FoodNotes. |
Tip:
Here is a simple visualisation of the command format.
2.3 Input parameters
This section provides a summary of the parameters used when inputting commands into the application.
Prefix | Parameter | Meaning | Input |
---|---|---|---|
n/ |
STALL_NAME |
Name of the stall | 1 or more characters |
s/ |
STALL_INDEX |
Index of the stall in FoodNotes | Positive integer from 1 to 2147483647 (inclusive) |
l/ |
STALL_LOCATION |
Location of the stall | 1 or more characters |
n/ |
ITEM_NAME |
Name of the item | 1 or more characters |
i/ |
ITEM_INDEX |
Index of the item in the menu | Positive integer from 1 to 2147483647 (inclusive) |
p/ |
ITEM_PRICE |
Price of the item | Non-negative number with 2 decimal places |
r/ |
STALL_RATING |
Rating of the stall | Positive integer from 1 to 5 (inclusive) |
r/ |
ITEM_RATING |
Rating of the item | Positive integer from 1 to 5 (inclusive) |
d/ |
STALL_DESCRIPTION |
Descriptive review for the stall | 1 or more characters |
d/ |
ITEM_DESCRIPTION |
Descriptive review for the item | 1 or more characters |
N/A | NAME_KEYWORD |
Keyword of the stall name | 1 or more characters |
N/A | LOCATION_KEYWORD |
Keyword of the stall location | 1 or more characters |
N/A | ITEM_KEYWORD |
Keyword of the menu items in the stall | 1 or more characters |
Info:
Character refers to any letter, number, symbol or space e.g. a
, A
, 1
, !
, @
, etc.
Positive integers are whole numbers greater than zero, e.g. 1, 2, 3, 4, 5, etc.
3. Quick Start
-
Ensure you have Java
11
or above installed in your Computer. -
Download the latest
FoodNotes.jar
from here. -
Copy the file to the folder you want to use as the home folder for your FoodNotes.
Info:
The illustration shown below is for Mac OS. The procedure for Windows is similar and the steps apply.
- Enter your home-folder and right-click on the downloaded jar file as shown.
- Select on the “New iTerm2 Tab here” option, (or any other terminal option you have) to open a terminal window in the folder.
- Run the command
java -jar FoodNotes.jar
in the terminal window. - FoodNotes will now launch and show a list of preloaded stalls.
- You are now ready to use FoodNotes!
- Type your commands in the Command Box and press Enter to execute it. e.g. typing
help
and pressing Enter will open the help window.
Some example commands you can try:-
add-stall n/Chicken Rice l/Deck
: Adds a stall namedChicken Rice
located atDeck
to the list of stalls. -
view-stall s/1
: Shows the 1st stall shown in the current list. -
list
: Lists all stalls.
-
- Refer to the Features below for more details of each command.
Tip:
If double-clicking FoodNotes.jar
does not work,
- Search for “Command Prompt” or “Terminal” on your computer.
- Navigate to the location where
FoodNotes.jar
is saved via the terminal. (Unsure how to navigate? You can try running this in your terminal:cd Downloads
.) - Run the following in the terminal:
java -jar FoodNotes.jar
.
4. Features
Now that you have started up FoodNotes, you are ready to start using its features! This section unveils the array of features FoodNotes has to offer.
4.1 General Features
The commands in this section allow you to perform operations on the entire system. They include:
- Viewing help
- Exiting from the application
- Clearing the FoodNotes database
4.1.1 Viewing help : help
You can use this command to view the online user guide, which contains information about all the instructions in FoodNotes.
Info:
Ensure that you have a stable internet connection and have a web browser on your computer in order to access the user guide.
Format:
help
Example:
You want to view the user guide of FoodNotes.
- Type
help
into the Command Box and pressEnter
to execute. -
A new window will appear as shown below. Click on the
Copy URL
button to copy the URL containing the FoodNotes user guide. - Open your preferred web browser on your computer and paste the link into the address bar.
- Press
Enter
to load the website.
Outcome:
- Your browser will now show the user guide of FoodNotes.
- You can now access information about all commands in FoodNotes via the user guide.
4.1.2 Exiting from the application: exit
You can use this command to exit FoodNotes.
Info:
This command will exit the application immediately. All data is saved automatically and will be reloaded upon restart of the application.
Format:
exit
Example:
You want to exit FoodNotes.
Type exit
into the Command Box and press Enter
to execute.
Outcome:
The FoodNotes application window is now closed.
4.1.3 Clearing all the stalls in FoodNotes: clear
You can use this command to clear all existing stalls in FoodNotes.
Warning:
This command will permanently delete all data stored in FoodNotes. You should make a backup of addressbook.json
if you still want to keep your old data.
Format:
clear
Example:
You want to clear all data stored in FoodNotes.
Type clear
into the Command Box and press Enter
to execute.
Outcome:
The FoodNotes database is now empty.
4.2 Stall Management
Explore FoodNotes’ stall management features designed to simplify your experience. The stall management features include:
- Listing all stalls
- Viewing a stall
- Adding a stall
- Deleting a stall
- Editing a stall
- Reviewing a stall
- Deleting a stall review
4.2.1 Listing all stalls : list
You can use this one-word command to view the list of all the stalls in FoodNotes..
Format:
list
Example:
You wish to view all the stalls in FoodNotes.
- Type
list
into the Command Box and pressEnter
to execute.
Outcome:
- The Result Display will show you a success message.
- The Left Display will show you the list of stalls.
4.2.2 Viewing a specific stall : view-stall
You can use this command to view details from a specific stall from FoodNotes and take a look at its menu items and review of the stall.
Format:
view-stall s/STALL_INDEX
Example:
You wish to view more details of the Japanese stall, which is the first stall in the list.
- Type
view-stall s/1
into the Command Box. - Press
Enter
to execute.
Outcome:
- The Result Display will show you a success message.
- The Left Display will show you the list of menu items from the stall.
- The Right Display will show you the details of the stall.
4.2.3 Adding a stall : add-stall
You can use this command to add a new stall to FoodNotes.
Format:
add-stall n/STALL_NAME l/STALL_LOCATION
Example:
You just visited the newly opened Subway at Utown and are eager to add it to FoodNotes.
- Type
add-stall n/Subway l/Utown
into the Command Box. - Press
Enter
to execute.
Outcome:
- The Result Display will show you a success message.
- You have now added a new stall with the specified name and location.
- The Left Display will show you the updated list of stalls.
Info:
- Let’s keep it unique! Avoid adding duplicate stalls with the same name and location (case-insensitive) to FoodNotes.
4.2.4 Deleting a stall : delete-stall
You can use this command to delete a stall from FoodNotes, making sure that your food diary is always up-to-date.
Format:
delete-stall s/STALL_INDEX
Example:
Western Stall has closed down, and you want to delete it from FoodNotes.
- Type
delete-stall s/3
into the Command Box. - Press
Enter
to execute.
Outcome:
- The Result Display will show you a success message.
- You have now deleted the third stall from the list.
- The Left Display will show you the updated list of stalls.
4.2.5 Editing a specific stall : edit-stall
You can use this command to edit an existing stall, and update its name and/or location. If the stall has a review, you may edit its rating and/or description.
Format:
edit-stall s/STALL_INDEX [n/STALL_NAME] [l/STALL_LOCATION] [r/STALL_RATING] [d/STALL_DESCRIPTION]
Info:
Parameters in the square brackets are optional, but you must specify at least one of them.
In addition, you can only edit ratings and descriptions if the stall already has an existing review.
Example:
You wish to change the location of the Western Stall in the list, as the stall has relocated from Utown to Deck.
- Type
edit-stall s/1 l/Deck
into the Command Box. - Press
Enter
to execute.
Outcome:
- The Result Display will show you a success message.
- You have now edited the first stall from the list, and the list of stalls will be updated.
- The Left and Right Display will show you the stall’s updated information.
4.2.6 Reviewing a stall : review-stall
You can use this command to add some personal touch to your food diary! Add star rating and even some text descriptions for the stall.
Format:
review-stall s/STALL_INDEX r/STALL_RATING d/STALL_DESCRIPTION
Example:
You want to give the Japanese Stall a five-star rating as you love their cutlets.
- Type
review-stall s/2 r/5 d/Their cutlets are amazing and crispy.
into the Command Box. - Press
Enter
to execute.
Outcome:
- The Result Display will show you a success message.
- You have now reviewed the second stall in the list.
- The Right Display will show you the star rating and detailed review of the stall.
4.2.7 Deleting a stall review: delete-stall-review
You can use this command to delete a review of an existing stall.
Format:
delete-stall-review s/STALL_INDEX
Example:
You decide to delete the review for the Western Stall as you accidentally reviewed the wrong stall.
- Type
delete-stall-review s/1
into the Command Box. - Press
Enter
to execute.
Outcome:
- The Result Display will show you a success message.
- You have now deleted the review of the first stall in the list.
- The Right Display will show you that the review has been deleted.
4.3 Stall Sorting
These features allow you to sort stalls in FoodNotes. The sorting features include:
- Sorting stalls by location
- Sorting stalls by rating
- Sorting stalls by price
4.3.1 Sorting stalls by location: sort-stalls-location
You can use this command to sort the stalls by their location in alphabetical order.
Format:
sort-stalls-location
Example:
You wish to sort the stalls by their location in alphabetical order.
- Type
sort-stalls-location
in the Command Box. - press
Enter
to execute.
Outcome:
- The Result Display will show you a success message.
- You will now see that the stalls are sorted by location in alphabetical order in the Left Display.
4.3.2 Sorting stalls by rating: sort-stalls-rating
You can use this command to sort the stalls by their rating in descending order, so the stalls with the highest ratings will appear at the top!
Format:
sort-stalls-rating
Example:
You wish to sort the stalls by their rating in descending order.
- Type
sort-stalls-rating
in the Command Box. - press
Enter
to execute.
Outcome:
- The Result Display will show you a success message.
- You will now see that the stalls are sorted by rating in descending order in the Left Display.
4.3.3 Sorting stalls by price: sort-stalls-price
You can use this command to sort the stalls by the average price of its menu items in ascending order, so the cheapest stalls will appear at the top!
Format:
sort-stalls-price
Example:
You wish to sort the stalls by their average price in ascending order.
- Type
sort-stalls-price
in the Command Box. - press
Enter
to execute.
Outcome:
- The Result Display will show you a success message.
- You will now see that the stalls are sorted by average price in ascending order in the Left Display.
4.4 Stall Finding
These features allow you to find stalls in FoodNotes. The finding features include:
- Finding stalls by name
- Finding stalls by location
- Finding stalls by item
4.4.1 Finding stalls by name: find-by-name
You can use this command to quickly locate specific food stalls based on their names. Even if you can only remember part of the stall name, this command can help you narrow down your choices effectively.
Format:
find-by-name NAME_KEYWORD
Info:
If you have a “Japanese Stall” in FoodNotes, you can find it using find-by-name japanese
as the find
commands are case-insensitive.
However, partial or incomplete matches won’t count as a match, thusfind-by-name japan
will not return any results as “japan” is not an exact match for “japanese”.
Example:
You wish to find stalls that have ‘Japanese’ or ‘Western’ or ‘Noodles’ in their names.
- Type
find-by-name Japanese Western Noodles
in the Command Box. - Press
Enter
to execute.
Outcome:
- The Result Display will show you a success message indicating the number of matches found.
- You will now see the matching stalls in the Left Display.
Tip:
- You can enter more than one keyword, separated by a space, and all the stalls containing any of the keywords will be listed!
4.4.2 Finding stalls by location: find-by-location
You can use this command to quickly locate specific food stalls based on their locations. If you want to find the nearest food options, this command can help you narrow down your choices effectively.
Format:
find-by-location LOCATION_KEYWORD
Example:
You wish to find stalls that are located at the Deck.
- Type
find-by-location deck
in the Command Box. - Press
Enter
to execute.
Outcome:
- The Result Display will show you a success message indicating the number of matches found.
- You will now see the matching stalls in the Left Display.
Tip:
- You can enter more than one keyword, separated by a space, and all the stalls containing any of the keywords will be listed!
4.4.3 Finding stalls by item: find-by-item
You can use this command to quickly locate specific food stalls based on the items on their menu. If you are craving for a specific dish, this command can help you narrow down your choices effectively.
Format:
find-by-item ITEM_KEYWORD
Example:
You wish to find stalls that have chicken in their menu.
- Type
find-by-item chicken
in the Command Box. - Press
Enter
to execute.
Outcome:
- The Result Display will show you a success message indicating the number of matches found.
- You will now see the matching stalls in the Left Display.
Tip:
- You can enter more than one keyword, separated by a space, and all the stalls containing any of the keywords will be listed!
4.5 Item Management
These features allow you to manage information about the items in FoodNotes. The item management features include:
- Viewing an item
- Adding an item
- Deleting an item
- Editing an item
- Reviewing an item
- Deleting an item review
4.5.1 Viewing an item : view-item
You can use this command to view details of a specific item from a specific stall in FoodNotes, which includes the price, rating and description of the item.
Format:
view-item s/STALL_INDEX i/ITEM_INDEX
Example:
You want to view more about Chicken Katsu Curry from the Japanese stall.
- Type
view-item s/1 i/1
into the Command Box. - Press
Enter
to execute.
Outcome:
- The Result Display will show you a success message.
- The Right Display will show you the details of item.
4.5.2 Adding an item : add-item
You can use this command to add your new favourite food item to your favourite stall in FoodNotes.
Format:
add-item s/STALL_INDEX n/ITEM_NAME p/ITEM_PRICE
Example:
You want to add a new menu item named ‘Pork Chop’ with a price of $5.50 to the menu of the Japanese stall.
- Type
add-item s/1 n/Pork Chop p/5.50
into the Command Box. - Press
Enter
to execute.
Outcome:
- The Result Display will show you a success message.
- You have now added a new item with the specified name and price.
- The Left Display will show you the updated list of items from the stall.
- The Right Display will show you the new item.
Info:
- You are not allowed to add duplicate items of the same name (case-insensitive) to a stall.
4.5.3 Deleting an item : delete-item
You can use this command to delete an item from the database.
Format:
delete-item s/STALL_INDEX i/ITEM_INDEX
Example:
You wish to delete item “mochi” from Western Stall.
- Type
delete-item s/1 i/1
into the Command Box. - Press
Enter
to execute.
Outcome:
- The Result Display will show you a success message.
- You have now deleted the first menu item of the first stall.
- The Left Display will show you the updated list of items from the stall.
4.5.4 Editing an item : edit-item
You can use this command to edit an existing item, and update its name, location, rating and/or description.
Format:
edit-item s/STALL_INDEX i/ITEM_INDEX [n/ITEM_NAME] [p/ITEM_PRICE] [r/ITEM_RATING] [d/ITEM_DESCRIPTION]
Info:
Parameters in the square brackets are optional, but you must specify at least one of them.
In addition, you can only edit ratings and descriptions if the item already has an existing review.
Example:
You wish to edit the price of tiramisu from the Western Stall as the price has increased.
- Type
edit-item s/1 i/1 p/20.10
into the Command Box. - Press
Enter
to execute.
Outcome:
- The Result Display will show you a success message.
- You have now edited the first menu item of the first stall.
- The Right Display will show you the item with the updated information.
4.5.5 Reviewing an item : review-item
You can use this command to review an existing item, and add your own star rating and text description for your experience at the stall.
Format:
review-item s/STALL_INDEX i/ITEM_INDEX r/ITEM_RATING d/ITEM_DESCRIPTION
Example:
You wish to review the chicken cutlet from the Japanese Stall as it was delicious.
- Type
review-item s/1 i/1 r/4 d/Very Flavourful
into the Command Box. - Press
Enter
to execute.
Outcome:
- The Result Display will show you a success message.
- You have now reviewed the first menu item of the first stall.
- The Right Display will show you the star rating and detailed review of the item.
4.5.6 Deleting an item review: delete-item-review
You can use this command to delete a review of an existing item.
Format:
delete-item-review s/STALL_INDEX i/ITEM_INDEX
Example:
You decide to delete the review for tiramisu from Western Stall as you accidentally reviewed the wrong item.
- Type
delete-item-review s/1 i/1
into the Command Box. - Press
Enter
to execute.
Outcome:
- The Result Display will show you a success message.
- You have now deleted the review of the first menu item of the first stall, and the menu will be updated.
- The Right Display will show you that the review has been deleted.
5. Command summary
5.1 General Commands
Features | Format, Examples |
---|---|
Help | help |
Exit | exit |
Clear | clear |
5.2 Stall Management Commands
Features | Format, Examples |
---|---|
List |
list e.g. list
|
View stall |
view-stall s/STALL_INDEX e.g. view-stall s/1 |
Add stall |
add-stall n/STALL_NAME l/STALL_LOCATION e.g. add-stall n/Japanese Stall l/Deck |
Delete stall |
delete-stall s/STALL_INDEX e.g. delete-stall s/1 |
Edit stall |
edit-stall s/STALL_INDEX [n/STALL_NAME] [l/STALL_LOCATION] [r/STALL_RATING] [d/STALL_DESCRIPTION] e.g. edit-stall s/1 l/Terrace |
Review stall |
review-stall s/STALL_INDEX r/STALL_RATING d/DESCRIPTION e.g. review-stall s/1 r/5 d/Good food and service |
Delete stall review |
delete-stall-review s/STALL_INDEX e.g. delete-stall-review s/1 |
5.3 Stall Sorting Commands
Features | Format, Examples |
---|---|
Sort stalls by location |
sort-stalls-location e.g. sort-stalls-location
|
Sort stalls by rating |
sort-stalls-rating e.g. sort-stalls-rating
|
Sort stalls by price |
sort-stalls-price e.g. sort-stalls-price
|
5.4 Stall Finding Commands
Features | Format, Examples |
---|---|
Find stalls by name |
find-by-name e.g. find-by-name western japanese |
Find stalls by location |
find-by-location e.g. find-by-location deck terrace |
Find stalls by item |
find-by-item e.g. find-by-item chicken |
5.5 Item Management Commands
Features | Format, Examples |
---|---|
View item |
view-item s/STALL_INDEX i/ITEM_INDEX e.g. view-item s/1 i/1 |
Add item |
add-item s/STALL_INDEX n/ITEM_NAME p/ITEM_PRICE e.g. add-item s/1 n/Chicken Rice p/4.50 |
Delete item |
delete-item s/STALL_INDEX i/ITEM_INDEX e.g. delete-item s/1 i/1 |
Edit item |
edit-item s/STALL_INDEX i/ITEM_INDEX [n/ITEM_NAME] [p/ITEM_PRICE] [r/ITEM_RATING] [d/ITEM_DESCRIPTION] e.g. edit-item s/1 i/1 p/5.00 |
Review item |
review-item s/STALL_INDEX i/ITEM_INDEX r/ITEM_RATING d/ITEM_DESCRIPTION e.g. review-item s/1 i/1 r/5 d/Flavorful |
Delete item review |
delete-item-review s/STALL_INDEX i/ITEM_INDEX e.g. delete-item-review s/1 i/1 |
6. FAQ
Q: Can I use FoodNotes without prior experience with CLI (Command Line Interface) applications?
A: Yes, FoodNotes is designed to be user-friendly, even for those unfamiliar with CLI applications. The user guide includes explanations of all commands and their syntax, making it accessible for beginners.
Q: How do I transfer my data to another computer?
A: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous FoodNotes home folder.
Q: How can I export or backup my FoodNotes data?
A: Currently, FoodNotes does not support direct data export or backup. We recommend manually backing up the database file from the application directory.
Q: Do I need to manually save my data?
A: No, FoodNotes automatically saves your data after any command that changes the data. There is no need for you to save manually.
Q: Can I run FoodNotes on my mobile device?
A: No, FoodNotes is currently only available for Windows, Mac and Linux operating systems.