A simple command-line task tracker used to manage and organize your daily tasks.
This project allows you to add, update, delete, and track the progress of tasks directly from the terminal while storing data in a local JSON file.
Task Tracker CLI is a lightweight command-line application that helps you keep track of what you need to do, what you're currently working on, and what you've completed.
It is designed as a practice project to strengthen skills in file handling, command-line interfaces, and basic application structure without using external libraries.
The application accepts commands through positional arguments and stores all tasks in a JSON file in the current directory.
- Add tasks
- Update tasks
- Delete tasks
- Mark tasks as todo, in-progress, or done
- List all tasks
- List tasks by status:
- done
- todo
- in-progress
- Automatically creates a JSON file if it does not exist
- Uses only native filesystem modules
- Handles errors and edge cases gracefully
Each task contains the following properties:
- id — unique identifier
- description — short task description
- status — todo | in-progress | done
- createdAt — date/time created
- updatedAt — last updated date/time
Example JSON entry:
{
"id": 1,
"description": "Buy groceries",
"status": "todo",
"createdAt": "2026-01-01T12:00:00",
"updatedAt": "2026-01-01T12:00:00"
}