arbtt-graph
arbtt - Automatic Rule Based Time Tracker
Note: Requires 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 categorize.cfg
file:
$ 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 arbtt-capture
.
Getting Started
Start recording
- Install
arbtt
. Runarbtt-capture
at startup. - Probably let it run for some time to have some data.
Using arbtt-graph
- Clone/download this repository.
- Have a look at the
categorize.cfg
file. Add similar categories to yourcategorize.cfg
file. (Usually at~/.arbtt/categorize.cfg
). - Important: Modify path of the file in
update
. - Important: Accordingly modify
render/settings.js
for barcode categories. - Once everything is set up, run
update
once. - Now you can run
./arbtt-serve.py
(orpython3 arbtt-serve.py
) and go to the displayed address. (Default: <http://localhost:9999
>) - You can refresh anytime using the reload button to the right.
Structure
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.
Thanks
- Joachim Breitner for
arbtt
and numerous suggestions. - Andrej Karpathy for
ulogme
.
See also
- arbtt-chart is a console alternative to arbtt-graph
Happy tracking!