JOI is a command-line tool that helps you manage your tasks and deadlines efficiently. Designed to be simple and intuitive, JOI allows you to focus on whatβs important without unnecessary complexity.
- Task Management: Add, delete, and list tasks with ease.
- Deadline Tracker: Keep track of deadlines using intuitive commands.
- Event Scheduling: Plan events with start and end dates.
- Task Status Management: Mark tasks as completed or incomplete.
- Task Searching: Quickly find tasks by keywords.
- Persistent Storage: Saves your tasks so they remain available even after restarting.
- Clone this repository:
git clone https://github.com/keanneeee/ip.git
- Navigate into the project directory:
cd joi - Compile the Java files:
javac -d bin -sourcepath src src/chatbbg/chatBBG.java
- Run JOI:
java -cp bin chatbbg.chatBBG
JOI operates through simple command-line inputs:
list # Displays all tasks
todo <task name> # Adds a new to-do task
deadline <task> /by <date> # Adds a deadline task
event <task> /from <start> /to <end> # Adds an event task
mark <task number> # Marks a task as completed
unmark <task number> # Marks a task as incomplete
delete <task number> # Deletes a task
find <keyword> # Finds tasks containing the keyword
goodbye # Exits JOI and saves tasksπ joi
βββ π src
β βββ chatbbg/
β β βββ chatBBG.java # Main chatbot logic
β β βββ Extractor.java # Extracts user input details
β β βββ Functions.java # Handles user commands
β β βββ Storage.java # Manages file storage
β β βββ tasktypes/
β β β βββ Task.java
β β β βββ Todo.java
β β β βββ Deadline.java
β β β βββ Event.java
βββ π data (Created at runtime to store tasks)- Implement natural language processing for more flexible commands.
- Add GUI support for an intuitive user interface.
- Support task priorities and reminders.
We welcome contributions! Feel free to submit issues or pull requests.
π‘ "I'm JOI. You look lonely, I can fix that." π‘