Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mmistika/task-cli
This is a simple command-line tool built in Java to manage your to-do list. Created as a learning project.
https://github.com/mmistika/task-cli
cli java json no-third-party-libraries roadmap-sh task todo
Last synced: 7 days ago
JSON representation
This is a simple command-line tool built in Java to manage your to-do list. Created as a learning project.
- Host: GitHub
- URL: https://github.com/mmistika/task-cli
- Owner: mmistika
- License: unlicense
- Created: 2025-01-29T22:20:46.000Z (20 days ago)
- Default Branch: dev
- Last Pushed: 2025-01-31T18:32:57.000Z (18 days ago)
- Last Synced: 2025-01-31T19:25:51.516Z (18 days ago)
- Topics: cli, java, json, no-third-party-libraries, roadmap-sh, task, todo
- Language: Java
- Homepage:
- Size: 952 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# 📝 task-cli
**Task CLI** is a simple command-line tool built in Java to manage your to-do list. Created as a learning project based on the [roadmap.sh](https://roadmap.sh/projects/task-tracker) guidelines.
## 🚀 Features
- **Add** new tasks
- **Update** task descriptions
- **Delete** tasks
- **Mark** tasks as `todo`, `in-progress`, or `done`
- **List** tasks based on their status
- **Persistent storage** in a JSON file## 📦 Installation
> [!IMPORTANT]
> The minimum JDK version required is 22. Ensure you have JDK 22 or a higher version installed to avoid any issues.Clone the repository and compile the Java code:
```
git clone https://github.com/mmistika/task-cli.git
cd task-cli
javac --class-path src/main/java -d build/ src/main/java/io/github/mmistika/Main.java
```Run the CLI:
```
java -cp build io.github.mmistika.Main
```## 📖 Usage
```
task-cli [options]
```### Commands
| Command | Description | Example |
|---------------------------------|--------------------------------------------------------|-----------------------------------------------------|
| `add ` | Add a new task | `task-cli add "Buy groceries"` |
| `update ` | Update a task's description | `task-cli update 1 "Buy groceries and cook dinner"` |
| `delete ` | Remove a task permanently | `task-cli delete 1` |
| `mark-todo ` | Mark a task as "To Do" | `task-cli mark-todo 1` |
| `mark-in-progress ` | Mark a task as "In Progress" | `task-cli mark-in-progress 1` |
| `mark-done ` | Mark a task as "Done" | `task-cli mark-done 1` |
| `list` | Show all tasks | `task-cli list` |
| `list ` | Filter tasks by status (`todo`, `in-progress`, `done`) | `task-cli list done` |