Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Task Tracker CLI

A lightweight Command Line Interface (CLI) application built with Node.js to track and manage your daily tasks directly from the terminal. All tasks are stored persistently in a local JSON file.

Features

  • Task Management: Add, update, list, and delete tasks easily using CLI commands.
  • Flexible Updates: Independently update task descriptions (--desc) or status (--status)—or update both at the same time.
  • Status Options: Tracks task progress using standard statuses: todo, in-progress, and done.
  • Local Persistence: Saves all data automatically to a task-tracker.json file.
  • Error Handling: Validates inputs, arguments, and task IDs to ensure clean operations.

Prerequisites

  • Node.js: Version 18.x or higher installed on your machine.

Installation & Setup

  1. Clone the repository:
git clone https://github.com/emmanuel3186/task-tracker-cli.git
cd task-tracker-cli
  1. Run the app directly with Node:

No heavy external dependencies are required.

Usage Guide

  1. Add a Task
node task-tracker.js add "Buy groceries"
  1. List Tasks
  • List All tasks:
node task-tracker.js list
  • Filter by Status (todo, in-progress, done):
node task-tracker.js list todo
node task-tracker.js list in-progress
node task-tracker.js list done
  1. Update a Task

You can update either the description, status, or both in a single command:

  • Update Description Only:
node task-tracker.js update 1 --desc "Buy rice and milk"
  • Update Status Only:
node task-tracker.js update 1 --status in-progress
  • Update Both Simultaneously:
node task-tracker.js update 1 --status done --desc "Completed buying groceries"
  1. Delete a Task
node task-tracker.js delete 1

Data Structure

[
  {
    "id": 1,
    "description": "Buy rice and milk",
    "status": "in-progress",
    "date": "2026-09-01"
  }
]

Tech Stack

  • Runtime: Node.js
  • Modules: fs (File System), process (CLI Arguments)
  • Storage: JSON File Persistence

License

ISC

About

A lightweight Node.js CLI tool for managing daily tasks with local JSON persistence, custom flag parsing, and status filtering.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages