A while back, I wrote about Time Is Money.
Back then I ran into several technical problems with modern browsers’ idle api.
Circumventing these with a somewhat brute approach made it possible to get the extension to run more smoothly. Besides still being able to build it from source, it is now available in the chrome extension store.
In the extension options, a user can specify an hourly wage as well as a set of undesirable websites.
Whenever the user has an active tab on one of those websites, a counter will appear in the top left corner of the browser window. This is periodically updated to reflect the ‘amount spent’ on undesirable websites throughout the current week.
The count should only consider the most recently active tab when working with several browser windows. Yet, this is all a bit messy. There are plenty of edge cases: multiple browser windows, multiple browsers with different profiles, several OS windows open, OS hibernation, laptop lid closes and many more.
I attempted to capture some of those aspects explicitly. For all others, a simple timeout mechanism should bound the errors: after a user-defined timeout of inaction, the count will no longer be increased until there is further action.
Please reach out in case you bump into unintended behaviors or have suggestions for improvements!
For some more technical context, please see the project repo.