diff --git a/docs/UserGuide.md b/docs/UserGuide.md index 576381ed784..2cd089db7c2 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -1,11 +1,85 @@ +# User Guide + +* Quick Start +* Features + * Viewing help: `help` + * Adding a person: `add` + * Deleting a person: `delete` + * Listing all contacts: `list` + * Locating persons by name/tags: `find` + * Add an image for contacts: `add-image` + * Delete an image for contacts: `delete-image` + * Quick import admin contacts: `import` +* FAQ +* Command summary + +--- + +## Quick start + +1. Ensure you have Java `11` or above installed in your computer. +2. Download the latest `bookface.jar` from [here](https://github.com/AY2223S2-CS2103-F11-4/tp/releases). +3. Place `bookface.jar` file in the folder you would like to use as the *home directory*. +4. Run the application. The following GUI will appear upon first use of the application. +![GUI upon first use](images/GUIOnInitialUsage.png) + +5. The application is initially loaded with sample data for new users to try out the [features](#Features) listed below. +Experienced users can delete the sample data and proceed with regular usage. + +--- + +## Features + +### Help command: `help` + +Shows a link to the user guide to help new users get familiar with the commands for the application. + +Format: `help` + +### Add user contacts: `add` + +Format: `add [name] [year/course] [phone number] [email] [address]` Optional to add: `t/TAGS` + +* User is *required* to enter **name, status, phone number, email, address** +* Tags can be optional +* If the account exists, user can add in related field of interests to share with others + +Example: +* `add n/Shenghan s/Year2 Computer-science p/99999999 e/david@gmail.com a/punngol place 696a #12-348` will displays the + necessary basic information that are the user's name, year/course, phone number, email, address. Optional fields are tags, + for which there are commitment/cca tags, module tags and lastly the general tags for users to enter non-specific typed tags. + +Example (with the addition of tags): +* `add n/Shenghan s/Year2 Computer-science p/99999999 e/david@gmail.com a/punngol place 696a #12-348 t/developer ct/soccer + mt/cs2103` Note that the tags can be placed in any part of the command, and it will not break! + +Tags are categorised according to tag colors: +* Commitment tags: `coral pink` +* Module tags: `Dark green` +* General tags: `default blue` + +### Delete user contacts: `delete` + +Delete a contact. +Format: `delete INDEX` + +* Show contact details specified by `INDEX` +* The index refers to the index number shown in the displayed person list. +* The index *must* be a positive integer 1, 2, 3, … +* Extra: Will prompt user to re-confirm again before the contact is erased from BookFace + Example: +* `delete 2` Brings up the 2nd person in the address book and prompt user to confirm before deleting. + ### Listing all contacts: `list` List all contacts in the address book. + Format: `list` -### Locating persons by name/class/group: `find` +### Locating persons by name/tags: `find` Finds persons whose names contain any of the given keywords. + Format: `find KEYWORD [MORE_KEYWORDS]` * The search is case-insensitive e.g. `hans` will match `Hans` @@ -15,24 +89,29 @@ Format: `find KEYWORD [MORE_KEYWORDS]` * Persons matching at least one keyword will be returned (i.e. `OR` search) e.g. `Hans Bo` will return `Hans Gruber` , `Bo Yang` -### Add image for contacts +### Add an image for contacts -Add a contact image for each contact -Format: `add-image INDEX [NAME-OF-IMAGE]` +Add a contact image for each contact. + +Format: `add-image INDEX [PATH-TO-IMAGE]` * Adds an image to the contact at the specified `INDEX` * The index refers to the index number shown in the displayed person list. * The index **must be a positive integer** 1, 2, 3,... -* The image must be placed in a specific folder for BookFace to locate * If the image cannot be found or user did not specify a contact image, a default image will be used +> **Note:** The `[PATH-TO-IMAGE]` provided must be an absolute path, and should not be provided in quotation marks. +> For instance: `add-image 2 "C:/Users/user/Downloads/weekiat.png"` will be invalid, whereas +> `add-image 2 C:/Users/user/Downloads/weekiat.png` will be valid. + Examples: -* `list` followed by `add-image 2 weekiat.png` adds the image `weekiat.png` to the 2nd person in the address book +* `list` followed by `add-image 2 C:/Users/user/Downloads/weekiat.png` adds the image `weekiat.png` to the 2nd person in the address book -## Delete Image for contacts +## Delete an Image for contacts Delete the image of a contact. + Format: `delete-image INDEX` * Deletes the image of contact specified by `INDEX` @@ -43,9 +122,10 @@ Format: `delete-image INDEX` Example: * `delete-image 2` deletes the image of the 2nd person in the address book. -## Quick Import for admin contacts: `import` +### Quick Import for admin contacts: `import` Import administrative contacts for relevant faculties. + Format: `import [faculty]` * Faculty acronyms (e.g. soc) @@ -56,49 +136,7 @@ Example: * `import soc` adds all important administrative contact for School of Computing * `import chs` adds all important administrative contact for College of Humanities and Sciences - -## Add user contacts: `add` - -Format: `add [name] [year/course] [phone number] [email] [address]` Optional to add: `t/TAGS` - -* User is *required* to enter **name, status, phone number, email, address** -* Tags can be optional -* If the account exists, user can add in related field of interests to share with others - -Example: -* `add n/Shenghan s/Year2 Computer-science p/99999999 e/david@gmail.com a/punngol place 696a #12-348` will displays the -necessary basic information that are the user's name, year/course, phone number, email, address. Optional fields are tags, -for which there are commitment/cca tags, module tags and lastly the general tags for users to enter non-specific typed tags. - -Example (with the addition of tags): -* `add n/Shenghan s/Year2 Computer-science p/99999999 e/david@gmail.com a/punngol place 696a #12-348 t/developer ct/soccer -mt/cs2103` Note that the tags can be placed in any part of the command, and it will not break! - -Tags are categorised according to tag colors: -* Commitment tags: `coral pink` -* Module tags: `Dark green` -* General tags: `default blue` - -## Delete user contacts: `delete` - -Delete a contact. -Format: `delete INDEX` - -* Show contact details specified by `INDEX` -* The index refers to the index number shown in the displayed person list. -* The index *must* be a positive integer 1, 2, 3, … -* Extra: Will prompt user to re-confirm again before the contact is erased from BookFace - Example: -* `delete 2` Brings up the 2nd person in the address book and prompt user to confirm before deleting. - -## Help command: `help` - -Show a list of command to help users to navigate around -Format: `help` - -* Include list of commands to enable users to refer to in terminal. - ------------------------ +--- ## Command summary @@ -110,7 +148,7 @@ Format: `help` | **Find** | `find KEYWORD [MORE_KEYWORDS]`
e.g., `find James Jake` | | **List** | `list` | | **Help** | `help` | -| **Add-Image** | `add-image INDEX [NAME-OF-IMAGE]`
e.g., `add-image 2 weekiat.png` | +| **Add-Image** | `add-image INDEX [PATH-TO-IMAGE]`
e.g., `add-image 2 C:/Users/user/Downloads/weekiat.png` | | **Delete-Image** | `delete-image INDEX`
e.g., `delete-image 2` | | | **Import** | `import [faculty]`
e.g., `import soc, import chs` | diff --git a/docs/images/GUIOnInitialUsage.png b/docs/images/GUIOnInitialUsage.png new file mode 100644 index 00000000000..14f513ca7ec Binary files /dev/null and b/docs/images/GUIOnInitialUsage.png differ