Repository navigation
Releases: verakohh/Cleo
Release list
Latest-Release
Cleo v0.4 Release Notes
Release Date: 24 September 2024
Version: v0.4
1. New Features
1.1 Command Suggestions
- Cleo now suggests the closest command when the user makes a typo. For example, if the user types "deltee" instead of "delete", Cleo will respond with:
"Did you mean 'delete' instead?"
1.2 Priority Level System
- Tasks now support priority levels (P0 to P4), where P0 is the highest priority, and P4 is the default.
- Users can assign priorities to tasks using the following syntax:
priority [task number] #[priority level]
1.3 Task Sorting by Priority
- When listing tasks, Cleo automatically sorts them based on their priority. Higher-priority tasks will appear at the top of the list.
2. Improvements
2.1 Code Refactoring for Task Management
- Improved internal code structure by refactoring the task management methods for better maintainability.
- Reduced code duplication in the
addTask,markTask,unmarkTask, anddeleteTaskmethods, ensuring consistency across task operations.
2.2 User Experience Enhancements
- Enhanced responses from Cleo with more user-friendly messages.
- Commands are now more responsive, with improved error handling for invalid inputs.
2.3 Optimized Assertions and Error Handling
- Removed redundant null assertions in code and replaced them with appropriate error handling.
- Consistent error messages when tasks are invalid, improving clarity for the user.
2.4 Fixed jar file to pass smoke test
3. Bug Fixes
3.1 Task Deletion Confirmation
- Fixed a bug where Cleo sometimes displayed incorrect messages when deleting multiple tasks.
4. Future Plans (v0.5)
- Implementing a feature for recurring tasks and reminders.
- Enhancing the priority system by allowing users to automatically adjust task priorities based on deadlines.
How to Install:
- Download the Cleo v0.4 JAR file from the link provided.
- Open a terminal (or command prompt) and navigate to the folder where the JAR file is located.
- Run the application with the following command:
java -jar Cleo.jar
Cleo v0.3
Cleo v0.3 Release Notes
Release Date: 20 September 2024
Version: v0.3
1. New Features
1.1 Command Suggestions
- Cleo now suggests the closest command when the user makes a typo. For example, if the user types "deltee" instead of "delete", Cleo will respond with:
"Did you mean 'delete' instead?"
1.2 Priority Level System
- Tasks now support priority levels (P0 to P4), where P0 is the highest priority, and P4 is the default.
- Users can assign priorities to tasks using the following syntax:
priority [task number] #[priority level]
1.3 Task Sorting by Priority
- When listing tasks, Cleo automatically sorts them based on their priority. Higher-priority tasks will appear at the top of the list.
2. Improvements
2.1 Code Refactoring for Task Management
- Improved internal code structure by refactoring the task management methods for better maintainability.
- Reduced code duplication in the
addTask,markTask,unmarkTask, anddeleteTaskmethods, ensuring consistency across task operations.
2.2 User Experience Enhancements
- Enhanced responses from Cleo with more user-friendly messages.
- Commands are now more responsive, with improved error handling for invalid inputs.
2.3 Optimized Assertions and Error Handling
- Removed redundant null assertions in code and replaced them with appropriate error handling.
- Consistent error messages when tasks are invalid, improving clarity for the user.
3. Bug Fixes
3.1 Task Deletion Confirmation
- Fixed a bug where Cleo sometimes displayed incorrect messages when deleting multiple tasks.
5. Future Plans (v0.4)
- Implementing a feature for recurring tasks and reminders.
- Enhancing the priority system by allowing users to automatically adjust task priorities based on deadlines.
How to Install:
- Download the Cleo v0.3 JAR file from the link provided.
- Open a terminal (or command prompt) and navigate to the folder where the JAR file is located.
- Run the application with the following command:
java -jar Cleo.jar
Cleo v0.2
Cleo v0.2 Release
Overview
Cleo is a simple, intuitive personal assistant chatbot designed to help you manage your tasks effortlessly. In this v0.2 release, Cleo introduces several new features, including support for managing multiple tasks at once and the ability to display a list of commands for first-time users. Cleo continues to handle basic task types like ToDos, Deadlines, and Events. The application runs on the command line and uses natural language processing to interact with users.
New Features
1. Multiple ToDos
- You can now add multiple todo tasks at once by separating tasks with a semicolon.
- Example:
todo call mom; bathe; study for exam
- Example:
2. Delete Multiple Tasks
- Users can delete multiple tasks at once by providing task numbers separated by spaces.
- Example:
delete 1 3 5
- Example:
3. Command List
- Type
commandsto view the list of available commands, making it easier for new users to get started.
Task Management
Cleo helps you manage different types of tasks efficiently:
- Add ToDos: Quickly add a new todo task to the list.
- Add Deadlines: Create tasks with deadlines, and Cleo will remind you when they’re due.
- Add Events: Schedule events with start and end times.
- List Tasks: View all tasks you’ve added in an easy-to-read format.
- Mark/Unmark Tasks: Mark tasks as completed or undo them.
- Delete Tasks: Remove tasks from the list when you’re done with them.
- Find Tasks: Search for tasks based on keywords.
User-Friendly Interactions
- Cleo responds to your commands with friendly messages, making task management simple and intuitive.
- Simple command-line interface with natural language processing.
Commands
Here are some examples of Cleo’s commands:
| Command | Description | Example |
|---|---|---|
| todo | Adds a todo task | todo Buy groceries |
| deadline | Adds a deadline task with a due date | deadline Submit assignment /by 2024-09-10 |
| event | Adds an event with start and end times | event Project meeting /from 2024-09-10 10:00 /to 2024-09-10 12:00 |
| list | Lists all tasks | list |
| mark | Marks a task as done | mark 2 |
| unmark | Marks a task as not done | unmark 2 |
| delete | Deletes tasks by their numbers | delete 3 |
| find | Finds tasks by a keyword | find book |
| bye | Exits the application | bye |
| commands | Displays the list of available commands | commands |
Installation
- Clone the repository from GitHub.
git clone https://github.com/verakohh/ip.git
- Navigate to the project directory.
cd cleo - Run the application using Gradle.
./gradlew run
Future Improvements
- Task Prioritisation: Cleo will help prioritise tasks based on deadlines or importance.
- Mark and Unmark multiple tasks at once
Cleo v0.1
Cleo v0.1 Release
Overview
Cleo is a simple, intuitive personal assistant chatbot designed to help you manage your tasks effortlessly. In this v0.1 release, Cleo can add, list, mark, unmark, delete, and find tasks. It also supports basic task types like ToDos, Deadlines, and Events. The application runs on the command line and allows users to interact with Cleo in natural language.
Features
Task Management
- Add ToDos: Quickly add a new todo task to the list.
- Add Deadlines: Add tasks with deadlines, and Cleo will remind you when they're due.
- Add Events: Create events with start and end times.
- List Tasks: View all tasks you've added in an easy-to-read format.
- Mark/Unmark Tasks: Mark tasks as completed or undo them.
- Delete Tasks: Remove tasks from the list when you're done with them.
User-Friendly Interactions
- Cleo responds to your commands with friendly messages, making task management a breeze.
- Simple command interface with natural language processing.
Commands
| Command | Description | Example |
|---|---|---|
todo |
Adds a todo task | todo Buy groceries |
deadline |
Adds a deadline task with a due date | deadline Submit assignment /by 2024-09-10 |
event |
Adds an event with start and end times | event Project meeting /from 2024-09-10 10:00 /to 2024-09-10 12:00 |
list |
Lists all tasks | list |
mark |
Marks a task as done | mark 2 |
unmark |
Marks a task as not done | unmark 2 |
delete |
Deletes a task from the list | delete 3 |
bye |
Exits the application | bye |
Installation
- Clone the repository from GitHub.
git clone https://github.com/verakohh/ip.git
- Navigate to the project directory.
cd cleo - Run the application using Gradle.
./gradlew run
Future Improvements
- Task Prioritisation: In future versions, Cleo will help you prioritise tasks based on deadlines or importance.
- Recurring Tasks: Support for adding tasks that repeat on a regular schedule.
- Reminders: Set reminders for tasks with deadlines to receive notifications.