Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[tiffanyliu0220] iP #185

Open
wants to merge 37 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
5067e11
Week 2
tiffanyliu0220 Feb 7, 2024
c688996
Week 3
tiffanyliu0220 Feb 7, 2024
1bfdf54
Week 3
tiffanyliu0220 Feb 7, 2024
9c1c488
Week 4
tiffanyliu0220 Mar 4, 2024
4dd35ac
Level-5
tiffanyliu0220 Mar 7, 2024
ebc535d
Merge branch 'branch-Level-5'
tiffanyliu0220 Mar 7, 2024
16b5032
Level-6
tiffanyliu0220 Mar 7, 2024
1d963eb
A-Collections
tiffanyliu0220 Mar 7, 2024
629cd1c
Level-7
tiffanyliu0220 Mar 8, 2024
3fbfe84
Merge branch 'branch-Level-7'
tiffanyliu0220 Mar 8, 2024
4947b3a
still working on more oop
tiffanyliu0220 Mar 9, 2024
386d459
A-MoreOOP
tiffanyliu0220 Mar 9, 2024
00466b8
Level-9
tiffanyliu0220 Mar 10, 2024
23fc241
Merge pull request #1 from tiffanyliu0220/branch-Level-9
tiffanyliu0220 Mar 10, 2024
8ed0d1c
Merge branch 'branch-Level-9'
tiffanyliu0220 Mar 10, 2024
0ab06aa
A-JavaDoc
tiffanyliu0220 Mar 10, 2024
945178a
Merge branch 'master' of https://github.com/tiffanyliu0220/ip
tiffanyliu0220 Mar 10, 2024
34fa31a
A-CodeQuality
tiffanyliu0220 Mar 10, 2024
f1598b1
Update README feature of adding task.md
tiffanyliu0220 Mar 10, 2024
8794be4
Update README feature of adding task.md
tiffanyliu0220 Mar 10, 2024
ab1611b
Update README feature 2 of viewing task list.md
tiffanyliu0220 Mar 10, 2024
391800e
Update README.md
tiffanyliu0220 Mar 10, 2024
00dce25
Update README.md
tiffanyliu0220 Mar 10, 2024
1e754db
Update README feature 3 mark/unmark task as done.md
tiffanyliu0220 Mar 10, 2024
db0c247
Update README feature - find tasks.md
tiffanyliu0220 Mar 10, 2024
0ea728b
Update README feature load, save and display data.md
tiffanyliu0220 Mar 10, 2024
7a09af6
Update README.md
tiffanyliu0220 Mar 10, 2024
405b601
Update README feature - delete task.md
tiffanyliu0220 Mar 10, 2024
435b546
Update README feature - greet and exit.md
tiffanyliu0220 Mar 10, 2024
2ffffed
Update README.md
tiffanyliu0220 Mar 10, 2024
422a21d
Update README.md
tiffanyliu0220 Mar 10, 2024
b2ba144
Update README.md
tiffanyliu0220 Mar 10, 2024
6686ca4
Update README.md
tiffanyliu0220 Mar 10, 2024
2633fbb
Merge branch 'master' of https://github.com/tiffanyliu0220/ip
tiffanyliu0220 Mar 10, 2024
fcf59b1
no message
tiffanyliu0220 Mar 10, 2024
879520a
no message
tiffanyliu0220 Mar 10, 2024
72e4710
Update README.md
tiffanyliu0220 Mar 10, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions data/sunny.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[D][ ] Submit report (by:mon)
[E][ ] Team meeting (from:12pm to:2pm`)
239 changes: 225 additions & 14 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -1,29 +1,240 @@
# User Guide
# SUNNY BOT USER GUIDE

Welcome to Sunny Bot, your personal task manager! Below are the features and usage guidelines to help you make the most of Sunny Bot.

## Features

### Feature-ABC
### Feature 0 - Greeting the User

Sunny bot greets the user upon starting the program.

_Usage_

Example:

`Hello! I'm Sunny
What can I do for you?`

### Feature 1 - Adding of tasks

Sunny Bot allows you to add different types of tasks, such as Todo, Deadline, and Event.

_Usage_

**'todo' - Add a Todo task**

Add a new task without any specific date or time.

Example of usage:

`todo Buy groceries`

Expected outcome:
Sunny Bot will add a new Todo task and confirm the addition.

`Got it! I have successfully added:
[T][ ] Buy groceries
Now you have 1 task in the list.`




**'deadline' - Add a Deadline task**

Add a task with a specific deadline.

Example of usage:

Description of the feature.
`deadline Submit report /by mon`

### Feature-XYZ
Expected outcome:
Sunny Bot will add a new Deadline task and confirm the addition.

`Got it! I have successfully added:
[D][ ] Submit report (by:mon)
Now you have 2 tasks in the list.`

Description of the feature.

## Usage

### `Keyword` - Describe action

Describe the action and its outcome.
**event - Add an Event task**

Example of usage:
Add a task with a specific start and end time.

`keyword (optional arguments)`
Example of usage:

`event Team meeting /from 12pm /to 2pm`

Expected outcome:
Sunny Bot will add a new Event task and confirm the addition.

`Got it! I have successfully added:
[E][ ] Team meeting (from:12pm to:2pm)
Now you have 3 tasks in the list.`

Feel free to explore and try different variations with optional arguments!




### Feature 2 - Viewing Task List

Sunny Bot allows you to view the list of tasks currently in your task manager.


_Usage_

**list - Display the list of tasks**

View all tasks currently in your task manager.

Example of usage:

`list`

Expected outcome:
Sunny Bot will display the list of tasks.

`Here are the tasks in your list:
1. [T][ ] Buy groceries
2. [D][ ] Submit report (by:mon)
3. [E][ ] Team meeting (from:12pm to:2pm)`




### Feature 3 - Mark/Unmark Task as Done
Mark a task as done or undo the mark to indicate completion status.

_Usage_

**mark - Mark a task as done**

Mark a specific task as completed.

Example of usage:

`mark 2`

Expected outcome:
Sunny Bot will mark the specified task as done and confirm the action.

`Nice! I've marked this task as done!
[D][X] Submit report (by:mon)`




**unmark - Unmark a task as done**

Undo the completion status of a task.

Example of usage:

`unmark 2`

Expected outcome:
Sunny Bot will undo the completion status of the specified task and confirm the action.

`OK, I've marked this task as not done yet.
[D][ ] Submit report (by:mon)`




### Feature 4 - Find Tasks
Search for tasks containing specific keywords.

_Usage_

**find - Find tasks based on keywords**

Find tasks that match specific keywords.

Example of usage:

`find report`

Expected outcome:
Sunny Bot will display tasks containing the specified keyword.

`Here are the matching tasks in your list:
1.[D][ ] Submit report (by:mon)`

Feel free to experiment with different keywords to locate the tasks you need. Sunny Bot's flexible search functionality makes it easy to find and manage your tasks effectively.



### Feature 5 - Delete Task
Sunny Bot allows you to delete tasks.

_Usage_

**delete - Delete a task from the list**

Example of usage:

`delete 1`

Expected outcome:

`Noted. I've removed this task:
[T][ ] buy groceries
Now you have 2 tasks in the list.`





### Feature 6 - Load, Save, and Display Data
Sunny Bot provides the ability to load tasks from a file, save tasks to a file, and display them again when the program runs.

_Usage_
**Loading Tasks from File:**
Sunny Bot automatically loads tasks from a file when you start the program.

Example:

`Tasks loaded from file:
Read from file: [T][ ] buy groceries
Read from file: [D][ ] Submit report (by:mon)
Read from file: [E][ ] Team meeting (from:12pm to:2pm)
Tasks loaded successfully!`


**Saving Tasks to File:**
Sunny Bot will automatically save your tasks in the file for future use.

Every time a change is made, the program displays:

`Saving tasks to file...
Tasks saved successfully!`


**Displaying Tasks:**
Sunny Bot displays the loaded tasks when you run the program. If you have saved tasks, they will be loaded and presented in the task list.

Example:

`Here are the tasks in your list:
1. [T][ ] buy groceries
2. [D][ ] Submit report (by:mon)
3. [E][ ] Team meeting (from:12pm to:2pm)`




### Feature 7 - Exit the Program
Sunny bot allows you to exit the program.

_Usage_

**bye - Exits the program**

Example of usage:

`bye`

Description of the outcome.
Expected Outcome:

```
expected output
```
`Bye. Hope to see you again soon!`
27 changes: 27 additions & 0 deletions src/main/java/Deadline.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
/**
* Represents a Deadline task with a specific deadline.
*/
public class Deadline extends Task {
private String by;

/**
* Creates a new Deadline task with the given description and deadline.
*
* @param description The description of the Deadline task.
* @param by The deadline of the Deadline task.
*/
public Deadline(String description, String by) {
super(description);
this.by = by;
}

/**
* Returns a string representation of the Deadline task, including the deadline.
*
* @return A string representation of the Deadline task.
*/
@Override
public String toString() {
return "[D]" + super.toString() + " (by:" + by + ")";
}
}
10 changes: 0 additions & 10 deletions src/main/java/Duke.java

This file was deleted.

30 changes: 30 additions & 0 deletions src/main/java/Event.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
/**
* Represents an Event task with a specific start and end date/time.
*/
public class Event extends Task {
private String from;
private String to;

/**
* Creates a new Event task with the given description, start, and end date/time.
*
* @param description The description of the Event task.
* @param from The start date/time of the Event task.
* @param to The end date/time of the Event task.
*/
public Event(String description, String from, String to) {
super(description);
this.from = from;
this.to = to;
}

/**
* Returns a string representation of the Event task, including start and end date/time.
*
* @return A string representation of the Event task.
*/
@Override
public String toString() {
return "[E]" + super.toString() + " (from:" + from + " to:" + to + ")";
}
}
3 changes: 3 additions & 0 deletions src/main/java/META-INF/MANIFEST.MF
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
Manifest-Version: 1.0
Main-Class: Sunny

Loading