{"id":37841023,"url":"https://github.com/gitrust/timetracker","last_synced_at":"2026-01-16T16:00:11.438Z","repository":{"id":204953357,"uuid":"169455571","full_name":"gitrust/timetracker","owner":"gitrust","description":"A command-line time tracker written in python for personal usage","archived":false,"fork":false,"pushed_at":"2023-02-24T23:03:54.000Z","size":1006,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2023-11-01T19:33:10.189Z","etag":null,"topics":["command-line","python","python3","task-scheduler","task-tracker","time-tracker","timetracker"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gitrust.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2019-02-06T18:32:35.000Z","updated_at":"2023-11-01T19:33:12.384Z","dependencies_parsed_at":null,"dependency_job_id":"9ce52b8e-c8e8-4245-a19f-95f9a3f7b66a","html_url":"https://github.com/gitrust/timetracker","commit_stats":null,"previous_names":["gitrust/timetracker"],"tags_count":5,"template":null,"template_full_name":null,"purl":"pkg:github/gitrust/timetracker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitrust%2Ftimetracker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitrust%2Ftimetracker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitrust%2Ftimetracker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitrust%2Ftimetracker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gitrust","download_url":"https://codeload.github.com/gitrust/timetracker/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gitrust%2Ftimetracker/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28479451,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T11:59:17.896Z","status":"ssl_error","status_checked_at":"2026-01-16T11:55:55.838Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["command-line","python","python3","task-scheduler","task-tracker","time-tracker","timetracker"],"created_at":"2026-01-16T16:00:09.781Z","updated_at":"2026-01-16T16:00:11.389Z","avatar_url":"https://github.com/gitrust.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# timetracker\n\nA time tracker, written in python, for command-line usage\n\n# Prerequisites\n\n-  python 2.7 / 3.x\n\n\n# Installation\n\n1. Install python 2.7 or 3.x\n\n2. Install python modules\n\n       pip install -r requirements \n\n3. Create storage file `timer.db` (sqlite database)\n\n       python setup.py\n\n4. Copy file `timer.db` to your home directory (in windows %USERPROFILE%)\n\t\n# Screencast\n\n![](assets/screencast.gif)\n\n# Getting started\n\nStart timetracker\n\n    python tracker.py\n\n## Typical workflows\n\n### Adding new tasks\n\n    18:00 \u003e add project1\n        added new task #2\n    18:30 \u003e add project2\n        added new task #3\n    \n\n# Storage\n\nUses an Sqlite database to store all task data.\nDatabase file `timer.db` is located in directory %USERPROFILE%.\nWhen you exit timetracker application all schedules are written to the storage.\n\n# List of available commands\n\n\n    #\u003cid\u003e          reschedule an existing task using its id\n    add,a          add a new task and set it to active\n    adjust         adjust time of a task\n    clear,cl       clear all tasks\n    commit,ci      commit a task by id\n    done           set task to done\n    exit           exit application\n    export,exp     export data (current day) as JSON\n    help,h         this help\n    list,l,ls      list all available tasks (ls all; ls yd; ls)\n    pause,p        pause tasks\n    push           push all done tasks to store and remove them from current list\n    rename,ren     rename a task by id\n    remove,rm      delete task by id\n    status,st      status information\n\n# Command description\n\n## schedule a task\n\nSyntax: #`task-id`\n\nSet a task with given task-id as active\n\n## add\n\nAdd a new task\n\nAlias: add, a\n\nSyntax:  add `taskname`\n\nA new task is created and set as active. Its status will become ON.\n\n## adjust\n\nSyntax: adjust `task-id` `time`\n\nAdjust time of a task. Specify a time value in seconds. The value can be negative or positive.\n\n## clear\n\nRemove all tasks from current list\n\nAlias: clear, c\n\nTasks in the storage are not removed with this command.\n\n## commit\n\nCommits a task by id \n\nAlias: commit, ci  \n\nSyntax: commit `task-id`\n\nCommit time from given task to storage, add a new task with the same taskname to current task list \nand set new task as active.\n\n## done \n\nSet a task to complete\n\nSyntax: done `task-id`\n\nSets a task' status to DONE. Hide it in current list by default.\nSet pause task as active task.\n\n## exit\n\nAlias: exit, q\n\nWrite schedules to storage and exit application.\n\n## help\n\nAlias: help, h\n\nPrint help and usage\n\n## list \n\nList all current tasks \n\nAlias: list, ls\n\nSyntax: \n\n\tls      // list tasks from current list  \n\t\n\tls all  // list alls tasks from current list, also the DONE tasks \n\t\n\tls yd   // list all tasks you created yesterday (loading them from storage)\n\n## pause\n\nPause current tasks\n\nAlias: pause, p\n\nSyntax: pause `task-id`\n\nSet default pause task as active task\n\n## push\n\nPush all tasks with status DONE to storage and remove them from current list\n\n## rename\n\nSyntax: rename `task-id` `new-taskname`\n\nRename a task\n\n## remove\n\nAlias: remove, rm\n\nSyntax: remove `task-id`\n\nDelete a task permanently. If active task is deleted then pause task is set to active.\n\n## status\n\nAlias: status, st\n\nPrint status information\n\n# Task status\n\nON - an active task \n\nOFF - a task is paused\n\nDONE - a task is done\n\n# Timetracker UI\n\nUnder timetracker-ui you will find a web UI for timetracker storage.\nGo to time-tracker-ui folder and start the http server. UI application is available under http://localhost:8080\n\n\tstartserver.bat\n\n# Console Output\n\n    time tracker V0.9.10\n    \n    20:10 \u003e ls\n       id  spend     upd   created  status  name\n        1  00:00   20:10     20:10  ACTIVE  pause\n\n\t20:10 \u003e add New Task\n      added new task #2\n\n\t  20:10 \u003e add Second Task\n      added new task #3\n\n    20:10 \u003e ls\n       id  spend     upd   created  status  name\n        3  00:00   20:10     20:10  ACTIVE  Second Task\n        1  00:00   20:10     20:10  ACTIVE  pause\n        2  00:00   20:10     20:10  ACTIVE  New Task\n\n    20:10 \u003e done 2\n      set task #2 to done\n\n    20:10 \u003e ls\n       id  spend     upd   created  status  name\n        3  00:00   20:10     20:10  ACTIVE  Second Task\n        1  00:00   20:10     20:10  ACTIVE  pause\n\n    20:10 \u003e ls all\n       id  spend     upd   created  status  name\n        3  00:00   20:11     20:10  ACTIVE  Second Task\n        1  00:00   20:10     20:10  ACTIVE  pause\n        2  00:00   20:10     20:10  DONE    New Task\n\n\n    20:11 \u003e status\n\n      active:       #3 Second Task\n      pause:        00:00h\n      worktime:     00:00h\n      started:      20:10\n      tasks:        3\n    20:11 \u003e exit\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgitrust%2Ftimetracker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgitrust%2Ftimetracker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgitrust%2Ftimetracker/lists"}