arbtt - Automatic Rule Based Time Tracker
arbtt-stats version 0.9, since it has
for-each=minute, which is required for the barcode chart to work.
I love arbtt. Just remember to add
arbtt-capture to your startup applications and let it record active windows in the background. Then you can use
arbtt-stats to categorize recorded data. For example, running
arbtt-stats with the included
$ arbtt-stats --categorizefile=./categorize.cfg -c Graph Statistics for category "Graph" =============================== ________________Tag_|_________Time_|_Percentage_ Graph:social | 10d01h18m00s | 11.23 Graph:mail | 9d04h08m00s | 10.25 Graph:read-pdf | 6d23h17m00s | 7.79 Graph:term | 6d17h47m00s | 7.53 Graph:irc | 2d16h47m00s | 3.02 Graph:tv-local | 2d08h28m00s | 2.63 Graph:communities | 2d05h19m00s | 2.48 Graph:write | 1d17h06m00s | 1.91 (9 entries omitted) | 3d15h44m00s | 4.08 (unmatched time) | 43d22h02m00s | 49.07
It is pretty cool. But you would agree that colored graphs are much more striking than a plain ascii table? So taking a few ideas from karpathy's ulogme, I wrote this tool to plot my daily stats as logged by
- Probably let it run for some time to have some data.
- Clone/download this repository.
- Have a look at the
categorize.cfgfile. Add similar categories to your
categorize.cfgfile. (Usually at
- Important: Modify path of the file in
- Important: Accordingly modify
render/settings.jsfor barcode categories.
- Once everything is set up, run
- Now you can run
python3 arbtt-serve.py) and go to the displayed address. (Default: <
- You can refresh anytime using the reload button to the right.
All html/js UI is inside the
render folder. Also no information other than the percentage usage is inside the
json files, so you can even make the plots public for extra extrinsic motivation.
Suggestions and pull requests are always welcome.