{"id":14063522,"url":"https://github.com/andysvints/TimeTrackerApp","last_synced_at":"2025-07-29T15:33:49.642Z","repository":{"id":55191047,"uuid":"522313674","full_name":"andysvints/TimeTrackerApp","owner":"andysvints","description":"Simple time tracking functionalities within PowerShell","archived":false,"fork":false,"pushed_at":"2023-03-25T21:07:55.000Z","size":122,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-12-04T01:34:01.434Z","etag":null,"topics":["powershell","wpf"],"latest_commit_sha":null,"homepage":"","language":"PowerShell","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/andysvints.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2022-08-07T20:10:04.000Z","updated_at":"2023-11-25T21:00:03.000Z","dependencies_parsed_at":"2024-02-04T20:38:32.463Z","dependency_job_id":null,"html_url":"https://github.com/andysvints/TimeTrackerApp","commit_stats":null,"previous_names":["andysvints/timetrackerapp"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/andysvints/TimeTrackerApp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andysvints%2FTimeTrackerApp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andysvints%2FTimeTrackerApp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andysvints%2FTimeTrackerApp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andysvints%2FTimeTrackerApp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andysvints","download_url":"https://codeload.github.com/andysvints/TimeTrackerApp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andysvints%2FTimeTrackerApp/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267709623,"owners_count":24131923,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-29T02:00:12.549Z","response_time":2574,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["powershell","wpf"],"created_at":"2024-08-13T07:03:22.823Z","updated_at":"2025-07-29T15:33:49.307Z","avatar_url":"https://github.com/andysvints.png","language":"PowerShell","funding_links":[],"categories":["PowerShell"],"sub_categories":[],"readme":"# TimeTracker\n\nSimple time tracking functionalities within PowerShell. Helps you to track spent\ntime for different activities during your day to day work. Provides rudimentary\nWPF UI in Windows environment.\nAllows to start and track multiple tasks at the same time. Rounding up time spent\nbased on the provided increment. Default increment is 30 minutes. After you stop\ntime tracking it provides you the Time Tracking report. Can be used as CLI tool\nwithin Windows and Linux environments. In Windows can be used as WPF UI box for\nmore convenient time and activities tracking.\n\n## Installation\n\n Module is published to PowerShell Gallery. Use the following command to install\nit:\n\n ```powershell\n Install-Module -Name TimeTrackerApp -AllowPrerelease \n ```\n \n## Usage\n\nGeneric workflow is to create/adjust configuration file to suit your needs and \nthen start time tracking.\n\n### CLI\n\n* Create default config file\n* Update it if needed\n* Start time tracking instance(s)\n* View started time tracking instance(s)\n* Stop started time tracking instance(s)\n\n```powershell\n    New-DefaultConfigFile -Verbose\n    Get-ConfigFile -Verbose\n    Start-TimeTracker -Comment \"Reading \u0026 replying to email\" -Technician \"Clark Kent\"\n    Get-TimeTracker\n    Get-TimeTracker | select -ExpandProperty Id | Stop-TimeTracker\n```\n\n### GUI\n\n* Create default config file\n* Update it if needed\n* Start GUI\n\n```powershell\n    New-DefaultConfigFile -Verbose\n    Get-ConfigFile -Verbose\n    Invoke-TimeTracker\n```\n\n## Cmdlets\n\nPlease refer to the comment-based help for more information about these commands.\n\n### New-DefaultConfigFile\n\nThis function is generating default config file used by TimeTracker module.\nDefault config file:\n\n```json\n    {\n      \"CircularLogging\" : true,\n      \"LoggingLevel\":\"None\",\n      \"TimeIncrementMins\" : 30,\n      \"OutputFolder\": $($env:USERPROFILE),\n      \"OutputFormat\": \"CSV\",\n      \"Technician\": \"\"\n    }\n```\n\n#### Syntax\n\n```powershell\n New-DefaultConfigFile [-WhatIf] [-Confirm] [\u003cCommonParameters\u003e]\n```\n\n#### Example\n\n```powershell\nPS \u003e New-DefaultConfigFile -Verbose\n    VERBOSE: Performing the operation \"Create New Config File\" on target \"DefaultConfig\".\n    VERBOSE: Creating Default Config File\n```\n\nThis example creates a default config file using predefined template.\n\n### Get-ConfigFile\n\nThis function is reading existing config file.\n\n#### Syntax\n\n```powershell\nGet-ConfigFile [-WhatIf] [-Confirm] [\u003cCommonParameters\u003e]\n```\n\n#### Example\n\n```powershell\nPS \u003e Get-ConfigFile\n      CircularLogging   : True\n      OutputFormat      : CSV\n      OutputFolder      : C:\\Users\n      TimeIncrementMins : 30\n      Technician        : Mr Test\n      LoggingLevel      : None\n```\n\n### Test-ConfigFile\n\nVerify validity of the config file\n\n#### Syntax\n\n```powershell\nTest-ConfigFile [-ConfigObj] \u003cObject\u003e [-WhatIf] [-Confirm] [\u003cCommonParameters\u003e]\n```\n\n#### Example\n\n```powershell\nPS\u003e Get-ConfigFile | Test-ConfigFile\nTrue\n```\n\n### Start-TimeTracker\n\nStart TimeTracking instance.\n\n#### Syntax\n\n```powershell\nStart-TimeTracker [-Comment] \u003cString\u003e [-Technician \u003cString\u003e] [-WhatIf] [-Confirm] [\u003cCommonParameters\u003e]\n```\n\n#### Example\n\n```powershell\n PS \u003e Start-TimeTracker -Comment \"Reading \u0026 replying to emails\"\n```\n\n### Get-TimeTracker\n\nGet TimeTracker instance(s).\n\n#### Syntax\n\n```powershell\nGet-TimeTracker [-WhatIf] [-Confirm] [\u003cCommonParameters\u003e]\n```\n\n#### Example\n```powershell\n    PS \u003e Get-TimeTracker\n    StartTime            Technician Comment        Id\n    ---------            ---------- -------        --\n    2/7/2023 12:56:40 PM Mr Test    Reading emails 000e67ec-48b9-4244-8f90-006a0afe3929\n```\n\n### Stop-TimeTracker\n\nThis function is stopping TimeTracking instance based on Id.\n\n#### Syntax\n\n```powershell\nStop-TimeTracker [-Guid] \u003cObject\u003e [-WhatIf] [-Confirm] [\u003cCommonParameters\u003e]\n```\n\n#### Example\n\n```powershell\n PS \u003e Stop-TimeTracker -Guid f73e4c31-1e32-4a83-935c-14ac4bd74302 -Verbose\n      VERBOSE: Performing the operation \"Stopping TimeTracker\" on target \"'Id: f73e4c31-1e32-4a83-935c-14ac4bd74302'\".\n      VERBOSE: Stopping new TimeTracker Instance.\n      VERBOSE: Config Exists\n      VERBOSE: Config has been successfully validated.\n      VERBOSE: Checking if C:\\Users\\test\\TimeTracker\\f73e4c31-1e32-4a83-935c-14ac4bd74302.track exists.\n      VERBOSE: Id: f73e4c31-1e32-4a83-935c-14ac4bd74302 exists\n      VERBOSE: TimeTracking stopped: f73e4c31-1e32-4a83-935c-14ac4bd74302\n```\n\n### Invoke-TimeTracker\n\n    Invoke TimeTracker WPF UI.\n\n#### Syntax\n\n```powershell\nInvoke-TimeTracker [-WhatIf] [-Confirm] [\u003cCommonParameters\u003e]\n```\n\n#### Example\n```powershell\nPS \u003e Invoke-TimeTracker\n```\n\n**[Timer icons created by Freepik - Flaticon](https://www.flaticon.com/free-icons/timer)**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandysvints%2FTimeTrackerApp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandysvints%2FTimeTrackerApp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandysvints%2FTimeTrackerApp/lists"}