Skip to content

Commit

Permalink
Merge pull request nus-cs2103-AY2223S2#69 from hongshenggg/master
Browse files Browse the repository at this point in the history
Update UG to include the initial portions of the UG, and to better reflect the current state of features
  • Loading branch information
SHni99 authored Mar 25, 2023
2 parents 93b847e + be61f5b commit 8b6bd78
Show file tree
Hide file tree
Showing 2 changed files with 90 additions and 52 deletions.
142 changes: 90 additions & 52 deletions docs/UserGuide.md
Original file line number Diff line number Diff line change
@@ -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/[email protected] 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/[email protected] 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`
Expand All @@ -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`
Expand All @@ -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)
Expand All @@ -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/[email protected] 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/[email protected] 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

Expand All @@ -110,7 +148,7 @@ Format: `help`
| **Find** | `find KEYWORD [MORE_KEYWORDS]`<br> e.g., `find James Jake` |
| **List** | `list` |
| **Help** | `help` |
| **Add-Image** | `add-image INDEX [NAME-OF-IMAGE]` <br> e.g., `add-image 2 weekiat.png` |
| **Add-Image** | `add-image INDEX [PATH-TO-IMAGE]` <br> e.g., `add-image 2 C:/Users/user/Downloads/weekiat.png` |
| **Delete-Image** | `delete-image INDEX` <br> e.g., `delete-image 2` | |
| **Import** | `import [faculty]` <br> e.g., `import soc, import chs` |

Binary file added docs/images/GUIOnInitialUsage.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 8b6bd78

Please sign in to comment.