Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
5ebe972
Level 0 (renamed file from duke.java to oongaliegabangalie.java)
Feb 21, 2025
d23dc91
Level-1.1 (basic functionality to meet criteria)
Mar 2, 2025
e3f5072
Level-1.2 (added personality with annoyance levels, annoyance message…
Mar 2, 2025
5f001dd
Level-2 (added tasks and tasklist, echo method no longer invoked in m…
Mar 2, 2025
ea07394
Level-3 (Mark as Done, added new methods, added Task class)
Mar 4, 2025
3a95491
Level-4.1 (added ToDo, deadlines, events)
Mar 5, 2025
c53d50f
Level-4.2 (small change to fix logic)
Mar 6, 2025
1c8db77
Level-5.1 (basic logic implemented, have yet to optimise and fix inco…
Mar 6, 2025
c6a781e
Level-5.2 (moved all of mark and unmark implementation into method to…
Mar 6, 2025
c27f77e
Level-5.3 (added personality, fixed small bug in mark and unmark wher…
Mar 6, 2025
a1e37c0
Level-5.4-A-Packages (Organized classes into packages)
Mar 10, 2025
630eebd
Level-6 (Implemented delete function, switched to using ArrayList ins…
Mar 12, 2025
c805f81
Level-7 (implemented save function with un-updated master branch usin…
Mar 12, 2025
f49b305
Merge branch 'branch-Level-6'
Mar 12, 2025
63557f2
Merge branch 'branch-Level-7'
Mar 12, 2025
2b8eba7
updated save function to work with ArrayList instead of Array. both L…
Mar 12, 2025
5dacb45
A-Jar
Mar 12, 2025
817087f
A-MoreOOP
Mar 13, 2025
39de007
Level-8 (Added dates and times functionality for BOTH deadline and ev…
Mar 13, 2025
e8a4ba6
Level-9 (Find function)
Mar 13, 2025
0c860a8
A-JavaDoc (Added comments)
Mar 13, 2025
e1a689d
Merge pull request #1 from OliverQiL/branch-Level-8
OliverQiL Mar 13, 2025
3130cdd
Merge branch 'master' into branch-Level-9
OliverQiL Mar 13, 2025
60fc0df
Merge pull request #2 from OliverQiL/branch-Level-9
OliverQiL Mar 13, 2025
a369440
Merge pull request #3 from OliverQiL/branch-A-JavaDoc
OliverQiL Mar 13, 2025
acf7a62
Merge branches 'master' and 'master' of https://github.com/OliverQiL/ip
Mar 13, 2025
da7843c
A-UserGuide (Edited User Guide to explain Oongaliegabangalie Bot)
Mar 14, 2025
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
Empty file added data/oongaliegabangalie.txt
Empty file.
270 changes: 256 additions & 14 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -1,30 +1,272 @@
# Duke User Guide
# OongaliegaBangalie Bot User Guide

// Update the title above to match the actual product name
Welcome to OongaliegaBangalie Bot! Your friendly (albeit slightly sassy) task management assistant. This guide will help you get started and make the most of this bot's features.

// Product screenshot goes here
## Table of Contents
- [Introduction](#introduction)
- [Getting Started](#getting-started)
- [Features](#features)
- [Adding Tasks](#adding-tasks)
- [Todo Tasks](#todo-tasks)
- [Deadline Tasks](#deadline-tasks)
- [Event Tasks](#event-tasks)
- [Managing Tasks](#managing-tasks)
- [Listing Tasks](#listing-tasks)
- [Marking Tasks as Done](#marking-tasks-as-done)
- [Unmarking Tasks](#unmarking-tasks)
- [Deleting Tasks](#deleting-tasks)
- [Finding Tasks](#finding-tasks)
- [Finding by Keyword](#finding-by-keyword)
- [Finding by Date](#finding-by-date)
- [Command Summary](#command-summary)
- [Error Messages](#error-messages)

// Product intro goes here
## Introduction

## Adding deadlines
OongaliegaBangalie Bot is a text-based task management application that allows you to keep track of your todos, deadlines, and events. The bot automatically saves your tasks, so you can close and reopen the application without losing your data.

// Describe the action and its outcome.
## Getting Started

// Give examples of usage
1. Ensure you have Java 11 or higher installed on your computer
2. Download the latest version of OongaliegaBangalie Bot jar file
3. Run the bot using:
```
java -jar oongaliegabangalie.jar
```
4. Start interacting with the bot using commands described in this guide

Example: `keyword (optional arguments)`
## Features

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

OongaliegaBangalie Bot supports three types of tasks:

#### Todo Tasks

Todos are simple tasks with no specific timing attached.

**Format**: `todo DESCRIPTION`

**Example**:
```
todo buy groceries
```

**Expected Output**:
```
____________________________________________________________
Got it. I've added this task:
[T] [ ] buy groceries
Now you have 1 tasks in the list.
____________________________________________________________
```

#### Deadline Tasks

Deadlines are tasks that need to be completed by a specific time.

**Format**: `deadline DESCRIPTION /by DATE_TIME`

The date time can be entered in these formats:
- `yyyy-MM-dd HH:mm` (e.g., 2023-03-15 14:30)
- `d/M/yyyy HHmm` (e.g., 15/3/2023 1430)

**Example**:
```
deadline submit assignment /by 2023-04-01 23:59
```

**Expected Output**:
```
____________________________________________________________
Got it. I've added this task:
[D] [ ] submit assignment (by: Apr 1 2023, 11:59 PM)
Now you have 2 tasks in the list.
____________________________________________________________
```

#### Event Tasks

Events are tasks that take place from one time to another.

**Format**: `event DESCRIPTION /from DATE_TIME /to DATE_TIME`

**Example**:
```
event team meeting /from 2023-04-02 10:00 /to 2023-04-02 12:00
```

**Expected Output**:
```
____________________________________________________________
Got it. I've added this task:
[E] [ ] team meeting (from: Apr 2 2023, 10:00 AM to: Apr 2 2023, 12:00 PM)
Now you have 3 tasks in the list.
____________________________________________________________
```

### Managing Tasks

#### Listing Tasks

To see all your tasks, use the list command.

**Format**: `list`

**Example**:
```
list
```

**Expected Output**:
```
____________________________________________________________
Here are the tasks in your list:
1. [T] [ ] buy groceries
2. [D] [ ] submit assignment (by: Apr 1 2023, 11:59 PM)
3. [E] [ ] team meeting (from: Apr 2 2023, 10:00 AM to: Apr 2 2023, 12:00 PM)
Better get to it quick!
____________________________________________________________
```

#### Marking Tasks as Done

To mark a task as completed, use the mark command with the task number.

**Format**: `mark TASK_NUMBER`

**Example**:
```
mark 1
```
expected output

**Expected Output**:
```
____________________________________________________________
Nice! I've marked this task as done:
[T] [X] buy groceries
Now go do something else and stop bothering me!
____________________________________________________________
```

#### Unmarking Tasks

If you need to change a task back to not done, use the unmark command.

**Format**: `unmark TASK_NUMBER`

**Example**:
```
unmark 1
```

**Expected Output**:
```
____________________________________________________________
OK, I've marked this task as not done yet:
[T] [ ] buy groceries
You better get to it...
____________________________________________________________
```

## Feature ABC
#### Deleting Tasks

To remove a task from your list, use the delete command.

**Format**: `delete TASK_NUMBER`

**Example**:
```
delete 3
```

**Expected Output**:
```
____________________________________________________________
Noted. I've removed this task:
[E] [ ] team meeting (from: Apr 2 2023, 10:00 AM to: Apr 2 2023, 12:00 PM)
Now you have 2 tasks in the list
____________________________________________________________
```

### Finding Tasks

#### Finding by Keyword

To find tasks containing a specific keyword, use the find command.

**Format**: `find KEYWORD`

**Example**:
```
find assignment
```

**Expected Output**:
```
____________________________________________________________
Here are the matching tasks in your list:
1.[D] [ ] submit assignment (by: Apr 1 2023, 11:59 PM)
____________________________________________________________
```

#### Finding by Date

To find tasks occurring on a specific date, use the finddate command.

**Format**: `finddate YYYY-MM-DD`

**Example**:
```
finddate 2023-04-01
```

**Expected Output**:
```
____________________________________________________________
Here are the tasks on 2023-04-01:
1. [D] [ ] submit assignment (by: Apr 1 2023, 11:59 PM)
Not too busy, but you should still get on with it!
____________________________________________________________
```

## Command Summary

| Command | Format | Example |
|---------|--------|---------|
| Add a todo | `todo DESCRIPTION` | `todo buy groceries` |
| Add a deadline | `deadline DESCRIPTION /by DATE_TIME` | `deadline submit assignment /by 2023-04-01 23:59` |
| Add an event | `event DESCRIPTION /from DATE_TIME /to DATE_TIME` | `event team meeting /from 2023-04-02 10:00 /to 2023-04-02 12:00` |
| List tasks | `list` | `list` |
| Mark as done | `mark TASK_NUMBER` | `mark 1` |
| Mark as not done | `unmark TASK_NUMBER` | `unmark 1` |
| Delete a task | `delete TASK_NUMBER` | `delete 1` |
| Find by keyword | `find KEYWORD` | `find assignment` |
| Find by date | `finddate YYYY-MM-DD` | `finddate 2023-04-01` |
| Exit | `bye` | `bye` |

## Error Messages

OongaliegaBangalie Bot will provide helpful (though sometimes sassy) error messages when commands are incorrectly formatted:

- Todo without description:
```
stop wasting my time and add the description of the task after the command...
```

// Feature details
- Deadline without description:
```
haha very funny... why is there nothing after the command?
```

- Invalid task number:
```
Task #5 doesn't exist! Check your list again (or your head)!
```

## Feature XYZ
- Empty task list:
```
Your list is empty! nothing to see here...
```

// Feature details
The bot will automatically save your tasks between sessions, so you don't have to worry about losing your data.
10 changes: 0 additions & 10 deletions src/main/java/Duke.java

This file was deleted.

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: oongaliegabangalieBot.ui.oongaliegabangalie

Loading