Skip to content

Latest commit

 

History

History
535 lines (387 loc) · 15.7 KB

UserGuide.adoc

File metadata and controls

535 lines (387 loc) · 15.7 KB

Student Buddy - User Guide

1. Introduction

Student Buddy is for tech-savvy students who prefer to use a desktop app for managing tasks. More importantly, Student Buddy is optimized for those who prefer to work with a keyboard rather than a mouse, but still has a graphical display for easy viewing. Do you want to organise, prioritise and never miss a deadline again? Then this app is perfect for you!

💡
Student Buddy works best with a screen resolution of at least 1280x800.

2. Quick Start

Here are the steps to get you started with the Student Buddy.

  1. Ensure you have Java version 9 or later installed in your Computer.

  2. Download the latest TaskManager.jar here.

  3. Copy the file to the folder you want to use as the home folder for Student Buddy.

  4. Double-click the file to start the app. The GUI should appear in a few seconds. It should look like this:

    StudentBuddy
  5. Type the command in the command box and press Enter to execute it.
    e.g. typing help and pressing Enter will open the help window.

  6. Try the following example commands to get a feel for the app:

    • list : shows a list of all tasks in the app

    • add n/Assignment m/CG2027 d/12-02 p/1 : adds a task named Assignment of module CG2023, with submission date 12-02 and priority level 1 to Student Buddy.

    • delete1 : deletes the 1st task shown in the current list

    • help : displays this guide inside the app

    • exit : exits the app

3. Features

Command Format

  • Words in UPPER_CASE are the parameters to be supplied by the user e.g. in add n/NAME, NAME is a parameter which can be used as add n/CS2113.

  • Items in square brackets are optional e.g n/NAME [t/TAG] can be used as n/CS2113 t/urgent or as n/CS2113.

  • Items with ​ after them can be used multiple times including zero times e.g. [t/TAG]…​ can be used as   (i.e. 0 times), t/urgent, t/urgent t/math etc.

  • Parameters can be in any order e.g. if the command specifies n/NAME d/DATE, d/DATE n/NAME is also acceptable.

  • Dates are in the format DD-MM.

3.1. Signing up for an account : signup

Creates an account for the user. To signup, there must be no existing account.

💡
Only one account can be created per user.
💡
Passwords should not have spaces and may only include the following special characters:
!#$%&'*+/=?`{|}~^.@-

Format: signup u/USERNAME p/PASSWORD

Example:

  • signup u/nicholas p/lee
    Signed up: nicholas

3.2. Logging into an account : login

Logs the user into their account. An account has to be created before logging in.
Format: login u/USERNAME p/PASSWORD

Example:

  • login u/nicholas p/lee
    Logged in as nicholas

3.3. Logging out of an account : logout

Logs user out of an account.
Format: logout

Example:

  • logout
    Logged out of nicholas

3.4. Deleting an account : deleteacc

Deletes account in the system.

💡
Only an admin is allowed to use this command.

Format: deleteacc

Example:

  • deleteacc
    Account has been deleted!

3.5. Viewing help : help, h

Displays a list of commands
Format: help or h

3.6. Adding a task: add, a

Adds a task to Student Buddy.
Format: add n/NAME m/MODULE d/DATE p/PRIORITY [t/TAG]…​ or a n/NAME m/MODULE d/DATE p/PRIORITY [t/TAG]…​

💡
A task can have any number of tags (including 0)

Examples:

  • add n/Tutorial 3 m/CG1112 d/21-03 p/2 t/urgent
    Adds a task with the name Tutorial 3, module code CG1112, date 21-03, priority code 2, with the tag urgent.

  • a n/Project Version 1 m/CS2113T d/11-03 p/1
    Adds a task with the name Project Version 1, module code CS2113T, date 11-03 and priority code 2.

3.7. Listing all tasks : list, l

Shows a list of all tasks in Student Buddy.
Format: list or l

3.8. Editing a task : edit, e

Edits an existing task in Student Buddy.
Format: edit INDEX [n/NAME] [m/MODULE] [d/DATE] [p/PRIORITY] [t/TAG]…​ or e INDEX [n/NAME] [m/MODULE] [d/DATE] [p/PRIORITY] [t/TAG]…​

  • Edits the task at the specified INDEX. The index refers to the index number shown in the displayed task list. The index must be a positive integer 1, 2, 3, …​

  • At least one of the optional fields must be provided.

  • Existing values will be updated to the input values.

  • When editing tags, the existing tags of the task will be removed i.e adding of tags is not cumulative.

  • You can remove all the person’s tags by typing t/ without specifying any tags after it.

Examples:

  • edit 1 n/Tutorial 4 d/21-03 t/urgent
    Edits the name and date of the 1st task to be Tutorial 4 and 21-03 with the tag urgent respectively.

  • edit 2 n/Project t/
    Edits the name of the 2nd task to be Project and clears all existing tags.

3.9. Locating tasks by name: findname, fn

Finds tasks with names containing any of the given keywords.
Format: findname KEYWORD [MORE_KEYWORDS] or fn KEYWORD [MORE_KEYWORDS]

  • The search is case insensitive. e.g HOMEWORK will match homework

  • The order of the keywords does not matter. e.g. CS2113 Tutorial will match Tutorial CS2113

  • Only the name is searched.

  • Only full words will be matched e.g. Assignments will not match Assignment

  • Tasks matching at least one of the keywords will be returned (i.e. OR search). e.g. CS2113 Assignment will return CS2113 Homework, Assignment 2

Examples:

  • findname Project Tutorial
    Returns all task with names containing Project or Tutorial.

  • fn Project Lab Report
    Returns all task having names Project, Lab, or Report

3.10. Locating tasks by module code: findmodule, fm

Finds tasks with module codes containing any of the given keywords.
Format: findmodule KEYWORD [MORE_KEYWORDS] or fm KEYWORD [MORE_KEYWORDS]

  • The search is case insensitive. e.g CS2113T will match cs2113t

  • The order of the keywords does not matter. e.g. CS2113T CS2101 will match CS2101 CS2113

  • Only the module code is searched.

  • Only full words will be matched e.g. CS2113T will not match CS2113

Examples:

  • findmodule CS2113T
    Returns all tasks containing the module code CS2113T.

  • fm CS2113T CS2101
    Returns all tasks containing the module code CS2113T or CS2101.

3.11. Locating tasks by date: finddate, fd

Finds tasks with dates containing any of the given keywords.
Format: finddate KEYWORD [MORE_KEYWORDS] or fd KEYWORD [MORE_KEYWORDS]

  • The order of the keywords does not matter. e.g. 03-03 21-03 will match 21-03 03-03

Examples:

  • finddate 20-03
    Returns all task with date 20-03.

  • fd 20-03 30-03
    Returns all task with date 20-03 or 30-03.

3.12. Locating tasks by priority code: findpriority, fp

Finds tasks with priority code containing any of the given keywords.
Format: findpriority KEYWORD [MORE_KEYWORDS] or fp KEYWORD [MORE_KEYWORDS]

  • The order of the keywords does not matter. e.g. 1 2 will match 2 1

Examples:

  • findpriority 1
    Returns all task with priority code 1.

  • fp 1 3
    Returns all task with priority code 1 or 3.

3.13. Deleting a task : delete, d

Deletes the specified task from Student Buddy.
Format: delete INDEX or d INDEX

  • Deletes the task at the specified INDEX.

  • The index refers to the index number shown in the displayed task list.

  • The index must be a positive integer 1, 2, 3, …​

Examples:

  • list
    delete 2
    Deletes the 2nd task in Student Buddy.

  • findname Project
    d 1
    Deletes the 1st task in the results of the findname command.

3.14. Selecting a task : select, sl

Selects the task identified by the index number used in the displayed task list.
Format: select INDEX or sl INDEX

  • Selects the task and displays the task on the calendar.

  • The index refers to the index number shown in the displayed task list.

  • The index must be a positive integer 1, 2, 3, …​

💡
Using add, edit, delete, logout or month will deselect the currently selected task.

Examples:

  • list
    select 2
    Selects the 2nd task in Student Buddy.

  • findmodule CS2113
    sl 1
    Selects the 1st task in the results of the findmodule command.

3.15. Sorting the task list : sort, s

Sorts the task list in Student Buddy according to an input parameter. Format: sort PARAMETER or s PARAMETER

  • Sorts the task list according to the PARAMETER.

  • The parameter must be one of the following name, module, date, priority.

  • You can also use the initials of the parameter i.e n, m, d or p.

Examples:

  • sort module
    Sorts the task list lexicographically by module code.

  • s priority
    Sorts the task list in descending order by priority.

  • s d
    Sorts the task list in chronological order by date

3.16. Adding miscellaneous notes : note

Adds a note to Student Buddy. Format: note h/HEADING c/CONTENT p/PRIORITY

  • Adds the note with the given parameters.

  • Priority can only take numbers from 1 to 3 with 1 being the most urgent.

  • Notes with Priority 1 will be displayed in red colour followed by 2 in yellow and 3 in white.

Example:

  • note h/Popular c/buy blue pens p/2
    Add a note with heading Popular, content buy blue pens and priority 2.

The following are 2 diagrams that demostrate the example shown above. One of the diagram shows the state before the command is executed and the other shows the state after command is executed.

Before:

AddNotesBefore

After:

AddNotesAfter

3.17. Deleting miscellaneous notes : deletenote

Deletes the specified note from Student Buddy.
Format: deletenote INDEX

  • Deletes the note at the specified INDEX.

  • The index refers to the index number shown in the displayed notes list.

  • The index must be a positive integer 1, 2, 3, …​

Examples:

  • deletenote 2
    Deletes the 2nd note from the displayed notes list in Student Buddy.

The following are 2 diagrams that demostrate the example shown above. One of the diagram shows the state before the command is executed and the other shows the state after command is executed.

Before:

DeleteNoteBefore

After:

DeleteNoteAfter

3.18. Listing entered commands : history

Lists all the commands that you have entered in reverse chronological order.
Format: history

Note

Pressing the and arrows will display the previous and next input respectively in the command box.

3.19. Undoing previous command : undo, u

Restores Student Buddy to the state before the previous undoable command was executed.
Format: undo or u

Note

Undoable commands: those commands that modify Student Buddy’s content (add, delete, edit and clear).

Examples:

  • delete 1
    list
    undo
    This reverses the delete 1 command.

  • select 1
    list
    undo
    The undo command fails as there are no undoable commands executed previously.

  • delete 1
    clear
    u (reverses the clear command)
    u (reverses the delete 1 command)
    This reverses the clear command and the delete 1 command.

3.20. Redoing the previously undone command : redo, r

Reverses the most recent undo command.
Format: redo or r

Examples:

  • delete 1
    undo (reverses the delete 1 command)
    redo (reapplies the delete 1 command)

  • delete 1
    redo
    The redo command fails as there are no undo commands executed previously.

  • delete 1
    clear
    u (reverses the clear command)
    u (reverses the delete 1 command)
    r (reapplies the delete 1 command)
    r (reapplies the clear command)

3.21. Clearing all entries : clear , c

Clears all entries from Student Buddy.
Format: clear or c

3.22. Viewing tasks on a calendar

Tasks displayed in the task list are automatically displayed on a calendar of the current month.

In addition, the calendar comes with the following features:

  • Tasks are automatically colour-coded, with high, medium and low priority tasks appearing red, orange and blue, respectively.

  • Tasks are automatically listed in order of priority, from high to low.

  • If the task list is modified with add, delete or edit, or it is filtered using find, the calendar will update accordingly.

  • Selecting a task will highlight it on the calendar for easy viewing.

  • Calendar cells are scrollable.

A showcase of the calendar’s features is displayed below:

CalendarDemo

3.23. Changing the calendar month : month, m

Changes the month to be displayed by the calendar.
Format: month MONTH or m MONTH

  • Changes the displayed month to the specified MONTH.

  • MONTH must be an integer between 1 and 12 inclusive.

  • MONTH must not be the month already being displayed.

Examples:

  • month 2
    Changes the month displayed to February.

  • m 11
    Changes the month displayed to November.

3.24. Exiting the program : exit

Exits the program.
Format: exit

3.25. Saving the data

Student Buddy’s data is saved in the hard disk automatically after any command that changes the data.
There is no need to save manually.

3.26. Deleting Overdue Tasks : deleteoverdue, delod [coming in v2.0]

Deletes all tasks that are overdue. Format: deleteoverdue or delod

Examples:

  • list
    deleteoverdue
    Deletes all the overdue tasks in Student Buddy.

  • findname Project
    delod
    Deletes all the task in the results of the findname command.

3.27. Retrieving of notes from storage: [coming in v2.0]

Student Buddy’s notes will be stored inside notes.json file. Upon starting up Student Buddy, the notes will be retrieved from notes.json and displayed on the notes section of the GUI.

4. FAQ

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 Student Buddy folder.

5. Command Summary

  • Add add n/NAME m/MODULE d/DATE p/PRIORITY [t/TAG]…​
    e.g. add n/Tutorial 3 m/CG2023 d/21-02 p/3 t/urgent

  • Add Note note note h/HEADING c/CONTENT p/PRIORITY
    e.g. note h/Popular c/buy blue pens p/2

  • Clear : clear

  • Delete : delete INDEX
    e.g. delete 3

  • Delete Note deletenote INDEX
    e.g. delete 1

  • Edit : edit INDEX [n/NAME] [m/MODULE] [d/DATE] [p/PRIORITY] [t/TAG]…​
    e.g. edit 2 n/CG2027 Hw d/23-04

  • Find Date : finddate KEYWORD [MORE_KEYWORDS]
    e.g. finddate 21-03

  • Find Module : findmodule KEYWROD [MORE_KEYWORDS]
    e.g. findmodule CS2113T

  • Find Name : findname KEYWORD [MORE_KEYWORDS]
    e.g. findname Project

  • Find Priority : findpriority KEYWORD [MORE_KEYWORDS]
    e.g. findpriority 1

  • Help : help

  • History : history

  • List : list

  • Login : login u/USERNAME p/PASSWORD
    e.g. login u/nicholas p/abcdefg

  • Logout : logout

  • Month Change : month MONTH
    e.g. month 11

  • Redo : redo

  • Select : select INDEX
    e.g.select 2

  • Sign-up : signup u/USERNAME p/PASSWORD
    e.g. signup u/nicholas p/abcdefg

  • Sort : sort KEYWORD
    e.g sort module

  • Undo : undo