A simple command-line interface (CLI) tool built in C# to manage tasks. This application allows you to add, update, delete, and track tasks, with statuses such as "todo", "in-progress", and "done". Tasks are stored in a local JSON file for persistence. Sample solution for the Task Tracker challenge from roadmap.sh.
- Add a new task with a description.
- Update an existing task's description.
- Delete a task by ID.
- Mark a task as "in-progress" or "done".
- List tasks by status or view all tasks.
Each task includes:
- ID: A unique identifier.
- Description: A short description of the task.
- Status: One of "todo", "in-progress", or "done".
- CreatedAt: Timestamp when the task was created.
- UpdatedAt: Timestamp when the task was last updated.
-
Clone the repository:
git clone https://github.com/your-username/task-tracker-cli.git cd task-tracker-cli
-
Build the project:
dotnet build
-
Run the project:
dotnet run
dotnet run add "Buy groceries"
dotnet run update 1 "Buy groceries and cook dinner"
dotnet run delete 1
dotnet run mark-in-progress 1
dotnet run mark-done 1
dotnet run list
dotnet run list done
dotnet run list todo
dotnet run list in-progress
The tasks are saved in a tasks.json file in the project directory. This file will be created automatically if it does not exist.
If you enjoy my work or want to support what I do, feel free to Buy Me a Coffee!
Feel free to submit a pull request or report issues to help improve the project!
This project is licensed under the MIT License - see the LICENSE file for details.
For any questions or support, please reach out via GitHub Issues.