Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
03559aa
Ignore .class files
Jan 18, 2022
039cea9
Implement initial skeletal version of JRobo
Jan 18, 2022
2ef4b25
Implement a skeletal version
Jan 28, 2022
3fee1e9
Implement task history
Jan 28, 2022
e6cfbb5
Implement task management
Jan 28, 2022
73b4a69
Standardize coding style conventions
Jan 28, 2022
c1fb01e
Implement todos, deadlines, and events
Feb 2, 2022
9bd9d21
Implement text-ui-test
Feb 2, 2022
5ad4499
General refactor
Feb 2, 2022
c1ec3f6
Add input validations
Feb 11, 2022
c805574
Merge pull request #1 from edemirkirkan/branch-Level-5
Feb 11, 2022
4bac088
Add packages
Feb 11, 2022
1d6d709
Merge remote-tracking branch 'origin/master'
Feb 11, 2022
32a0838
Add packages
Feb 11, 2022
2192bdf
Implement delete task capability
Feb 18, 2022
f76aa33
Implement save and load capabilities
Feb 18, 2022
4068eb4
Merge pull request #2 from edemirkirkan/branch-Level-7
Feb 18, 2022
1a2c296
Creating binary JAR file
Feb 18, 2022
2d2161c
add storage and ui classes
Feb 23, 2022
5dca803
add date capabilities
Feb 23, 2022
fc6a322
add find task command
Feb 23, 2022
699b9b5
Merge pull request #3 from edemirkirkan/branch-Level-8
Feb 23, 2022
852a9c5
Merge pull request #4 from edemirkirkan/branch-Level-9
Feb 23, 2022
2989288
Set theme jekyll-theme-architect
Feb 23, 2022
d891fd5
Set theme jekyll-theme-tactile
Feb 23, 2022
20632e8
add documentation
Feb 23, 2022
5ebc7f6
Merge remote-tracking branch 'origin/master'
Feb 23, 2022
b291c96
Set theme jekyll-theme-tactile
Feb 23, 2022
a1203f0
change README.md
Feb 23, 2022
09bdb3c
Merge remote-tracking branch 'origin/master'
Feb 23, 2022
57f7476
change README.md
Feb 23, 2022
80c8dc2
Update README.md
Feb 23, 2022
a1d5bd7
Update javadoc
Feb 23, 2022
67673f0
Merge pull request #5 from edemirkirkan/branch-A-JavaDoc
Feb 23, 2022
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 .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ src/main/resources/docs/
# MacOS custom attributes files created by Finder
.DS_Store
*.iml
# class files generated by java
*.class
bin/

/text-ui-test/ACTUAL.txt
Expand Down
129 changes: 105 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,105 @@
# Duke project template

This is a project template for a greenfield Java project. It's named after the Java mascot _Duke_. Given below are instructions on how to use it.

## Setting up in Intellij

Prerequisites: JDK 11, update Intellij to the most recent version.

1. Open Intellij (if you are not in the welcome screen, click `File` > `Close Project` to close the existing project first)
1. Open the project into Intellij as follows:
1. Click `Open`.
1. Select the project directory, and click `OK`.
1. If there are any further prompts, accept the defaults.
1. Configure the project to use **JDK 11** (not other versions) as explained in [here](https://www.jetbrains.com/help/idea/sdk.html#set-up-jdk).<br>
In the same dialog, set the **Project language level** field to the `SDK default` option.
3. After that, locate the `src/main/java/Duke.java` file, right-click it, and choose `Run Duke.main()` (if the code editor is showing compile errors, try restarting the IDE). If the setup is correct, you should see something like the below as the output:
```
Hello from
____ _
| _ \ _ _| | _____
| | | | | | | |/ / _ \
| |_| | |_| | < __/
|____/ \__,_|_|\_\___|
```
# JRobo | Personal Todo App

## User Guide

JRobo is a command line application that you can use as your personal task tracker assistant.

JRobo consists of various different commands and three type of tasks, which are **todo**, **deadline**, and **event**.
<br/><br/>
**Todos** are tasks that do not have any specific time or duration.
<br/>
**Deadlines** are tasks that have a specific deadline that can be specified while adding.
<br/>
**Events** are tasks that have a specific time and duration that can be specified while adding.

Note that, even if the application is terminated, JRobo will keep all tasks for you in his memory.

## Commands

### Add Task

Tasks can be added using **todo**, **deadline**, **event** commands, or with their shortcut notations.

#### Command format:

`todo {description}`<br>
`deadline {description}/by {any time}`<br>
`event {description} /at {any time}`

#### Shortcuts:

`t {description}`<br>
`d {description} /by {any time}`<br>
`e {description} /at {any time}`

### Remove Task

Tasks can be removed using **delete** command, or with its shortcut **del**.

#### Command format:

`delete {task_number}`

#### Shortcuts:

`del {task_number}`

### List All Tasks

All tasks can be listed using **list** command, or with its shortcut **ls**.

#### Command format:

`list`

#### Shortcuts:

`ls`

### Check Task

Tasks can be marked as done using **mark** command, or with its shortcut **m**.

#### Command format:

`mark {task_number}`

#### Shortcuts:

`m {task_number}`

### Uncheck Task

Tasks can be marked as done using **unmark** command, or with its shortcut **um**.

#### Command format:

`unmark {task_number}`

#### Shortcuts:

`um {task_number}`

### Find Specific Task

All tasks can be searched and filtered using **find** command, or with its shortcut **f**.

#### Command format:

`find {search_key`

#### Shortcuts:

`f {search_key}`

### Termination

Application can be quited using **quit** command, or with its shortcut **q**.

#### Command format:

`quit`

#### Shortcuts:

`q`
1 change: 1 addition & 0 deletions _config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
theme: jekyll-theme-tactile
2 changes: 2 additions & 0 deletions data/tasks.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[E][ ] Ege Demirkirkan attend CS2113 lecture (at: Friday 18 Feb 2022 from 4 to 6pm)
[D][ ] meet your girlfrind (by: tommorow)
108 changes: 92 additions & 16 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -1,29 +1,105 @@
# User Guide
# JRobo | Personal Todo App

## Features
## User Guide

### Feature-ABC
JRobo is a command line application that you can use as your personal task tracker assistant.

Description of the feature.
JRobo consists of various different commands and three type of tasks, which are **todo**, **deadline**, and **event**.
<br/><br/>
**Todos** are tasks that do not have any specific time or duration.
<br/>
**Deadlines** are tasks that have a specific deadline that can be specified while adding.
<br/>
**Events** are tasks that have a specific time and duration that can be specified while adding.

### Feature-XYZ
Note that, even if the application is terminated, JRobo will keep all tasks for you in his memory.

Description of the feature.
## Commands

## Usage
### Add Task

### `Keyword` - Describe action
Tasks can be added using **todo**, **deadline**, **event** commands, or with their shortcut notations.

Describe the action and its outcome.
#### Command format:

Example of usage:
`todo {description}`<br>
`deadline {description}/by {any time}`<br>
`event {description} /at {any time}`

`keyword (optional arguments)`
#### Shortcuts:

Expected outcome:
`t {description}`<br>
`d {description} /by {any time}`<br>
`e {description} /at {any time}`

Description of the outcome.
### Remove Task

```
expected output
```
Tasks can be removed using **delete** command, or with its shortcut **del**.

#### Command format:

`delete {task_number}`

#### Shortcuts:

`del {task_number}`

### List All Tasks

All tasks can be listed using **list** command, or with its shortcut **ls**.

#### Command format:

`list`

#### Shortcuts:

`ls`

### Check Task

Tasks can be marked as done using **mark** command, or with its shortcut **m**.

#### Command format:

`mark {task_number}`

#### Shortcuts:

`m {task_number}`

### Uncheck Task

Tasks can be marked as done using **unmark** command, or with its shortcut **um**.

#### Command format:

`unmark {task_number}`

#### Shortcuts:

`um {task_number}`

### Find Specific Task

All tasks can be searched and filtered using **find** command, or with its shortcut **f**.

#### Command format:

`find {search_key`

#### Shortcuts:

`f {search_key}`

### Termination

Application can be quited using **quit** command, or with its shortcut **q**.

#### Command format:

`quit`

#### Shortcuts:

`q`
1 change: 1 addition & 0 deletions docs/_config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
theme: jekyll-theme-tactile
10 changes: 0 additions & 10 deletions src/main/java/Duke.java

This file was deleted.

22 changes: 22 additions & 0 deletions src/main/java/JRobo.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
import jrobo.storage.Storage;
import jrobo.task.TaskManager;
import jrobo.ui.UI;

import java.util.Scanner;

public class JRobo {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
TaskManager manager = new TaskManager();
Storage storage = new Storage(manager);
UI ui = new UI(scanner, manager);
run(storage, ui);
scanner.close();
}

public static void run(Storage storage, UI ui) {
storage.load();
ui.setView();
storage.save();
}
}
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: JRobo

Loading