Skip to content

Commit

Permalink
Add screenshot and user guide to README
Browse files Browse the repository at this point in the history
README is meant for the users to understand the use cases and commands present in the program
  • Loading branch information
shizy committed Sep 17, 2024
1 parent bbd0b56 commit 88d3e7a
Show file tree
Hide file tree
Showing 2 changed files with 116 additions and 13 deletions.
129 changes: 116 additions & 13 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -1,30 +1,133 @@
# Duke User Guide
# Bobby User Guide

// Update the title above to match the actual product name
![Product Screenshot](Ui.png)

// Product screenshot goes here
> Introducing **Bobby**, a revolutionary (*okay, not really*) new way to track your tasks!
Bobby is structured as a chatbot that users can talk with. By typing in comments and
sending them to Bobby as a chat message, he will be able to execute these commands and return
the relevant information

Additionally, Bobby automatically saves the task list to a file with every command execution,
meaning that there is data persistence between different sessions!

## Adding todos

A todo task is a named task without any deadlines.
Bobby is able to add such tasks to the task list

Example: `todo Homework`

```
Got it. I've added this task:
[T][] Homework
Now you have x tasks in the list
```

// Product intro goes here

## Adding deadlines

// Describe the action and its outcome.
A deadline task is a named task with a set datetime (the deadline).
Bobby is also able to add such tasks to the task list

Example: `deadline Assignment /by 2019-10-10 15:10`

// Give examples of usage
```
Got it. I've added this task:
[D][] Assignment (by: Oct 10 2019 10:10)
Now you have x tasks in the list
```

Example: `keyword (optional arguments)`
Note that it is necessary to provide the /by argument, followed by a datetime
with the YYYY-MM-DD HH:MM format

// A description of the expected outcome goes here
## Adding events

An event task is a named task with 2 set datetimes (from and to).
Bobby is able to add such tasks to the task list

Example: `event Concert /from 2020-10-05 16:30 /to 2020-10-05 19:00`

```
Got it. I've added this task:
[E][] Concert (from: Oct 05 2020 16:30 to: Oct 05 2020 19:00)
Now you have x tasks in the list
```

Note that it is necessary to provide the /from and /to arguments, followed by 2 datetimes
with the YYYY-MM-DD HH:MM format

## Listing tasks
Bobby lets you view the task list, with the `list` command

Example: `list`
```
expected output
Here are the tasks in your list:
1. [T][] Homework
2. [D][] Assignment (by: Oct 10 2019 10:10)
3. [E][] Concert (from: Oct 05 2020 16:30 to: Oct 05 2020 19:00)
```

## Feature ABC
## Marking tasks

// Feature details
Bobby gives you the ability to mark tasks as done, and also unmark them to indicate that they
are not done. After the task is marked, Bobby returns the string representation of the task

Example: `mark 1`
```
Nice! I've marked this task as done:
[T][X] Homework
```

## Feature XYZ
Example: `unmark 1`
```
Ok, I've marked this task as not done yet:
[T][] Homework
```

Note that the number argument after `mark` and `unmark` refers to the number of the task as shown by the `list` command

## Finding tasks
Bobby also lets users find specific tasks with a query
Any tasks with a name that includes the query will be returned.
Note that the search is *not* case-sensitive!

Example: `find assigment`
```
Here are the tasks matching your query:
2. [D][] Assignment (by: Oct 10 2019 10:10)
```

## Removing tasks
Of course, Bobby also lets users remove any tasks that no longer need to be tracked by the task list.
This command is similar in format to `mark`

Example: `delete 3`
```
Got it. I've removed this task:
[E][] Concert (from: Oct 05 2020 16:30 to: Oct 05 2020 19:00)
Now you have 2 tasks in the list
```

Note that the number argument after `delete` refers to the number of the task as shown by the `list` command

## Sorting tasks
Sometimes, we want to be able to conveniently order the tasks by their dates and times, so that we can easily know
what to do next. Bobby allows users to do just that, with the `sort` command!

Right now, Bobby is able to sort the tasklist in two ways: ascending via the `asc` argument, and descending via the `desc`
argument.

For sorting, todo tasks (that do not have datetimes) will be at the top of the list

Example: `sort asc`
```
List has been sorted in ascending order!
```

Example: `sort desc`
```
List has been sorted in descending order!
```

// Feature details
After this command is executed, the next time users `list` all the tasks out, it will be in the desired order
Binary file added docs/Ui.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 88d3e7a

Please sign in to comment.