Skip to content

eqsdxr/learning-cli-task-tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 

Repository files navigation

cli-task-tracker

A simple terminal task tracker in python.

A project from: https://roadmap.sh/projects/task-tracker

Features

  • add: add a new task.
  • update: update description of the task with specific id.
  • delete: remove task/tasks with specific ID/IDs.
  • list: show all tasks with specific status.
  • mark: change the status of task with specific id.
  • rearrange: rearrange task IDs and print them.

Installation

  1. Clone the repository:
    git clone https://github.com/eqsdxr/cli-task-tracker.git
  2. Navigate to the project directory:
    cd task-tracker
  3. Ensure you have Python installed. This project is compatible with Python 3.x.

Usage

Run the script from the command line with the appropriate command and arguments:

  • add:
    python task_tracker.py add "Task Description" "optional_status"
    • default status: todo
  • update:
    python task_tracker.py update task_id "New Description"
  • delete:
    python task_tracker.py delete task_id
    python task_tracker.py delete id1.id2.id3
    • task IDs remain unchanged.
    • You can delete multiple tasks by specifying a range or list of task_ids, separated by dots (e.g., 0.1.2.3.4). The order of indexes doesn't matter.
  • list:
    python task_tracker.py list [status]
    • If status is omitted, all tasks will be listed.
  • mark:
    • default status: None
    python task_tracker.py mark task_id new_status
  • rearrange:
    python task_tracker.py rearrange
  • WARNING:
    • If you modify the JSON file yourself, make sure you do it correctly and keep a backup, any syntax mistakes could cause the JSON to be overwritten.

Example

  1. To add a new task:

    python task_tracker.py add "Finish the report" "in-progress"
  2. To list all tasks:

    python task_tracker.py list
  3. To update a task:

    python task_tracker.py update 0 "Complete the report"
  4. To delete a task:

    python task_tracker.py delete 0
  5. To mark a task as completed:

    python task_tracker.py mark 0 completed

Notes

  • json file will be created if it doesn't exist.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Feel free to use, modify, or distribute this project as you wish. Contributions are not required.

Contact

For any questions or feedback, please open an issue in the GitHub repository or contact [email protected].

About

cli task tracker in python

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages