Skip to content

nikolaos-mavromatis/task-tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Task Tracker

Developed by: Mavromatis, Nikolaos

A CLI application to easily track tasks you're working on.

Quick Setup

In a terminal, navigate to the directory where you want to clone this repository.

cd path/to/folder

Clone this repository.

git clone https://github.com/nikolaos-mavromatis/task-tracker.git

Move into the newly created directory, create a virtual environment and install required packages.

cd task-tracker
python3 -m venv .venv
source .venv/bin/activate
pip3 install -r requirements.txt

You can start issuing commands to the task tracker. For example, to start a coding task:

python3 cli.py start coding

alt text

For an overview of the available commands, run the following – see also image below.

python3 cli.py --help

alt text

Functional Requirements

The user must be able to...

  • start a task with a specific tag.
  • pause/resume a task that is in progress.
  • mark a task as finished.
  • abort a task, i.e., abandon the task in progress.
  • view the status of the task tracker.
  • view last N number of tasks that were worked on.
  • view a breakdown of the tasks worked on on a specific date.
  • reset timer of current task.
  • switch through tasks seamlessly, i.e., not having to explicitly finish one task in order to start another.
  • define new tags for tasks.

The app must...

  • save completed tasks in a local database.
  • keep track of total time of active work spent on a single task.
  • have a set of predefined tags for task types.
  • print useful messages when the user:
    • tries to interact with a task when there is no task running.
    • starts a task with a new tag.
    • starts a task with the same tag as the current task.
    • pauses the tracker when a task is already paused.
    • resumes the tracker when there is no paused task.

Releases

No releases published

Packages

No packages published

Languages