My Beeminder browser extension

It seems that Apple has just announced support for WebExtensions in Safari.

It doesn’t seem like it’s quite available just yet, but when it is you should be able to port my extension fairly easily.

(So I wasn’t actually all that wrong about Safari supporting WebExtensions! I was just a few months early :slight_smile:.)


I am shamelessly reviving this thread to announce that I love this extension! Thanks @zzq.


I’m still using it every day myself! It’s been a gamechanger. :slight_smile:


Anyone found it stopped working in the latest chrome? Might be down to my browser being weird.

I don’t usually use Chrome, but I tried installing this extension (in Chrome) to see if there was a problem.

It seemed to work fine, so I’m not quite sure what to tell you, @emeraldnext. Perhaps check in chrome://extensions that the extension is still installed and enabled—Chrome tends to not like extensions that are not installed through the Chrome Web Store, and I wouldn’t put it past them to automatically disable or remove such extensions under the right circumstances.

1 Like

Pardon me, seems to have randomly returned to working today. Appreciate the check.

1 Like

This is your bi-yearly reminder that this extension is great and I love it so much.

I would change from the $8 to the $16 per month subscription if this extension was part of it. It’s just that useful.

1 Like

100% agree. I would love to see the features of this extension be integrated into Beeminder; it’s really levelled up how I use the site. So there’s definitely a voice in the team advocating for this! :grin: I also recommend it for certain use-cases in emails.

It’s worth boosting this thread in the forum every so often, so new folks can discover the tool, so thanks both for letting us know you’re keen and bumping it up! :thumbsup:


Yeah, this is super nice! You are impressive, @zzq! I finally tried it and have a small bug report: after filtering it messes up the sort order. The intended sort order is like so:

  1. Time remaining till derailing (or goal end date, whichever comes first)
  2. Pledge
  3. Goalname alphabetically

(We intend to standardize that ordering everywhere, including the smartphone apps, though we’re not there yet. (PS: I know the parenthetical in #1 seems dumb or that it should be optional but there are complicated reasons it’s important for now – to be revisited after Beeminder has properly open-ended goals.))


This is my bi-yearly reminder that this extension is absolutely fantastic. You should try it. There is a non-zero probability that I would have stopped using Beeminder without it.

The reason why I love it so much is that it allows me to hide goals that are done or irrelevant for the day. Consequently, the open goals stand out more and the UI becomes much cleaner. Collapsing a goal also gives me an additional “checking off effect” boost.


Enthusiastic agreement to all of this. I’m always thrown now when I don’t have this extension (e.g. on my work laptop).


Just discovered this extension. Looking forward to being able to use it on Safari at some point, but enjoying the ability to ‘collapse’ goals for the day.

@zzq I tried to make a small change to the extension, but I am unable to build it.

I ran

git clone
cd beebrowse
npm install
npm run build-ext

but get the following error:

  const err = new Error(message);

Error: Cannot find module '../utils/pattern'

Am I doing something wrong? Any hints are appreciated.

npm --version

In case that is relevant.

That should work—at least when I repeat those steps it does. I’m not sure why it isn’t working for you.

That said, I haven’t updated the dependencies in two years, an eternity in the javascript world, and it’s quite possible that things have bitrotted somehow. I’ve pushed a new commit to github that updates the dependencies to more recent versions. You might try that and see if you can get it to work.

1 Like

Thanks for taking a look, zzq.

After updating, I still wasn’t able to run build-ext successfully. I then ran the following command based on a Stackoverflow answer [1], and after updating I can now build fine.

npm cache clear --force

I guess my package cache contained stale packages or something. Anyway, I am fine for now. Thanks for your help.

[1] node.js - NPM is completely ignoring globally installed packages - Stack Overflow


@zzq Just got around to installing this. Very nice, and super fast! I’m impressed.


Hmmm. Question! On Chrome, whenever I collapse something, all my goals re-sort. They stay in order of deadlines, but the alphabetical order changes. On Firefox, that doesn’t happen. I prefer the Firefox behaviour, but I prefer to use Chrome for this. (Please, I know some folks in this forum have strong opinions about how other browsers are better, but let’s just pass that over in silence!)

Does anyone have any idea what’s happening and if there’s a way to stop it? I’m guessing probably not, but you never know.

(I can’t code, but my wife is a junior dev, so if there’s some kind of coding thing we can do to fix it… maybe that’s an option. I still have whatever version is in the zip file linked above.)

1 Like

Looking into it, I see that the goalCmp function (which compares two goals to determine their sort order), isn’t actually symmetric or reflexive, the way a comparison function is supposed to be. Firefox happens to do the correct thing regardless, which is probably why I never noticed the bug. In any case, I’ve fixed it, and published a new release which includes both this fix and also few small additional updates I never got around to publishing. (The search box now works a bit more like Altbee’s does: you can search for multiple space-separated terms at once, separated by spaces.)

Here is a download link for the Firefox extension, and here is a zip file you can use with Chrome. I’ve also edited the links in my posts above to point to these latest respective versions.


You are a wonder! Thank you!

Good to see that more people start to appreciate this extension [1][2]. It’s so much more visually pleasing when irrelevant or done-for-the-day goals are tugged away, I don’t know how I would manage without the plug-in.

[1] Calendial-Concomitant Continuous Commenting - #24 by rperce
[2] Notifications are a pain. - #4 by shanaqui