~~ Your minimalistic time tracking tool ~~
It lives in your tray:
tracks your time in a data format that is easy to read and to manually adapt if necessary:
{
"01.02.2023": {
"start": "07:11",
"end": "15:47",
"breaks": [],
"comment": "",
},
"02.02.2023": {
"start": "06:49",
"end": "19:12",
"breaks": ["14:41", "16:06", "18:12", "18:23"],
"comment": "",
},
"03.02.2023": {
"start": "06:49",
"end": "19:12",
"breaks": [],
"comment": "",
},
"04.02.2023": {
"start": "00:02",
"end": "04:12",
"breaks": [],
"comment": "",
}
}
and visualizes the data to help you keep track:
You can also export all your reports as an overview in Markdown:
You can configure PyTimeTracker to your needs using the config.toml.
Section | Param | Description |
---|---|---|
work | target_daily_work_minutes | The amount of minutes you have to work per day. |
work | default_break_after_6h | Amount of minutes to include after 6h of work. Set to 0 to deactivate. |
work | default_break_after_9h | Amount of minutes to include after 9h of work. Set to 0 to deactivate. |
paths | reports | The path to a folder where the reports shall be stored. Point this e.g. to a local cloud storage folder for automated backups. |
development | devmode | Activates (if set to true) the development mode only necessary when developing features for this app. |
To use another custom config TOML, see Arguments.
PyTimeTrack is for now only tested on Windows, should however be compatible to other platforms as well. Just try to build it your own using PyInstaller (see build_win.ps1). If you needed to do adoptions, open an Pull Request and I'll review it.
On Windows you can add PyTimeTrack to your startup routine like this.
Windows requires additional version data (shown in properties-details tab of the executable). Setting this information is with pyinstaller is described here.
- Update changelog
- Run build_win.ps1 like
./build_win.ps1 -version x.x.x
- Merge to main
- Tag
git tag v?.?.?
git push --tags
- Create GitHub release and attach binaries