boobot

User Guide for BooBot

BooBot is a desktop application that helps you to keep track of your tasks, saving time and ensuring that you are on track. Problems would be scared away with good task management provided by BooBot. While there is a Graphical User Interface (GUI), users would mostly interact with BooBot via text commands.

Quick Start

  1. Ensure that you have installed Java 11 on your computer. If not, you can download it here.
  2. Download the latest release for BooBot here.
  3. Open a command line interface, and change directory into the location where the release is stored.
  4. Run java -jar boobot.jar.
  5. BooBot would launch, where you should see something like this:

Features

list - List All Tasks

Displays a list of all existing tasks.

Format: list

todo - Create ToDo Task

Adds a new todo task to the list of existing tasks.

Format: todo TASK_NAME

Remarks:

Examples:



deadline - Create Deadline Task

Adds a new deadline task to the list of existing tasks.

Format: deadline TASK_NAME /by DEADLINE

Remarks:

Examples:



event - Create Event Task

Adds a new event task to the list of existing tasks.

Format: event TASK_NAME /from START_DATE /to END_DATE

Remarks:

Examples:



mark - Mark Task

Marks the status of a task as done.

Format: mark TASK_NUMBER

Remarks:

Examples:



unmark - Unmark Task

Marks the status of a task as undone.

Format: unmark TASK_NUMBER

Remarks:

Examples:



delete - Delete Task

Deletes a task in the list of existing tasks.

Format: delete TASK_NUMBER

Remarks:

Examples:



on - Get Tasks on a Specific Day

Displays a list of tasks that fall on a given day.

Format: on DAY

Remarks:

Examples:



find - Find Tasks

Displays a list of tasks whose names contain a given key phrase/word.

Format: find PHRASE

Remarks:

Examples:



reminder - Get Reminder for Tasks

Displays a list of due and upcoming tasks, either within 1 day, 1 week or 1 month from the current time.

Format: reminder DURATION

Remarks:

Examples:



help - Get Help

Displays the list of commands supported by BooBot.

Format: help

Expected output:

Supported Commands:
1.  list -> Provides a list of existing tasks.
2.  todo taskName -> Creates a todo task with name taskName.
3.  deadline taskName /by date -> Creates a deadline task with name taskName and deadline.
4.  event taskName /from startDate /to endDate -> Creates an event task with name taskName,
    start date startDate, and end date endDate.
5.  mark X -> Marks task number X as done.
6.  unmark X -> Marks task number X as undone.
7.  delete X -> Deletes task number X from the list.
8.  on givenDate -> Displays all the tasks that occur on givenDate.
9.  find keyPhrase -> Displays all the tasks whose names contain keyPhrase.
10. reminder day/week/month -> Provides a reminder for upcoming or due tasks, either within
    1 day, 1 week or 1 month from the current date and time.
11. help -> Prints the list of commands supported by this bot.
12. bye -> Exits the bot.

Please enter dates in the format of either yyyy-MM-dd hh:mm or yyyy-MM-dd.


bye - Exit

Exits BooBot where the application automatically closes after 5 seconds.

Format: bye

Expected output:

Goodbye. Hope that I have managed to scare all your problems away. Have a great day! :)


Saving and Loading of Data

Your task list would be saved automatically whenever a change to the list is made in the application. The data for the task list is stored locally on your computer, in a file called data.txt which is found in the same directory as the BootBot release.

You are free to look into the file and modify the data as needed, but avoid tampering with the format. If the format is altered, BooBot will not be able to read the data and this would risk your original data being overwritten by BooBot.

Command Summary

Command Description
list Lists all existing tasks
todo TASK_NAME Creates a new todo task
deadline TASK_NAME /by DEADLINE Creates a new deadline task
event TASK_NAME /from START_DATE /to END_DATE Creates a new event task
mark TASK_NUMBER Marks a task as done
unmark TASK_NUMBER Marks a task as undone
delete TASK_NUMBER Deletes a task
on DAY Lists all existing tasks that fall on a given day
find PHRASE Lists all existing tasks whose names contain a given phrase
reminder DURATION Lists all existing tasks that are either due or upcoming
help Lists all available commands supported by BooBot
bye Exits BooBot

Acknowledgements

BooBot is created using Java 11, and the libraries used are JavaFX and JUnit.