ip

Shin - A Smart Task Manager πŸ“

Shin is an interactive chatbot that helps users efficiently manage tasks.
Developed as part of the CS2103T Individual Project at the National University of Singapore (NUS), CS2103T.

Features ✨

πŸ“ Task Management:

🎨 Graphical Interface:

πŸ’Ύ Persistent Storage:

🚦 Robust Error Handling:

⚑ AI-Assisted Code Refinements:


Getting Started πŸš€

Prerequisites

Ensure you have the following installed:

Installation & Running

Clone this repository:

git clone https://github.com/yourusername/ip.git
cd ip

Compile and run the application:

./gradlew run

Or run the JAR file directly:

java -jar shin.jar

Usage Commands

Adding a ToDo Task Command: todo Example: todo Buy groceries

What it does: Adds a simple ToDo task to your task list.

Adding a Deadline Command: deadline /by Example: deadline Submit report /by 2025-02-28

What it does: Adds a task that must be done before a specific date.

Adding an Event Command: event /from /to Example: event Team meeting /from 2025-03-01 /to 2025-03-05

What it does: Adds a task that spans a specific start and end date.

Listing All Tasks Command: list

What it does: Displays all tasks in your list, showing their status (done/not done) and type (ToDo, Deadline, or Event).

Marking a Task as Done Command: mark Example: mark 2 What it does:

Marks the specified task as done.

Unmarking a Task Command: unmark Example:unmark 2

What it does: Marks the specified task as not done.

Deleting a Task Command: delete Example: delete 3

What it does: Removes the specified task from your list.

Exiting the Program Command: bye

What it does: Exits the chatbot.

Viewing Help Command: help

What it does: Shows usage instructions and a summary of all available commands.

Tips:

Use one command at a time. Make sure dates follow the YYYY-MM-DD format. Task numbers refer to their position in the displayed list. If you see formatting issues, try spacing out your parameters carefully.


❓ FAQ (Frequently Asked Questions)

1️⃣ Why are my tasks not saved after closing the chatbot?

πŸ“Œ The chatbot automatically saves tasks, but ensure you have write permissions in the directory.

2️⃣ Can I enter multiple commands at once?

🚫 No, Shin processes one command at a time.

3️⃣ What happens if I enter an incorrect command?

πŸ“Œ Shin provides an error message along with guidance on the correct format.


A Preview of Shin’s GUI

Shin Task Assistant


Code Structure πŸ“‚


AI Assistance πŸ€–

Some parts of this project were improved using AI to enhance code quality and maintainability:

βœ… All AI-assisted code was reviewed and refined to comply with course policies.


Acknowledgments πŸŽ“

This project was developed as part of the CS2103T Software Engineering module at NUS.
Special thanks to:


License πŸ“œ

This project is open-sourced under the MIT License.


Key Improvements in This Version

βœ… Better structured Features section for readability.
βœ… More concise descriptions in all sections.
βœ… Usage commands displayed in tables for easy reference.
βœ… FAQ streamlined for clarity.
βœ… Code structure clearly outlined.

˚```