Browser extensions interacting with Beeminder?

Has anyone written a browser extension that interacts with the Beeminder UI? Not just changing the CSS, that would be too trivial, but interacting with the site in some way, like making the data entry always switch to advanced entry by default, or always using goal date and goal total. Firefox and/or Chrome.

I have a few reasons for asking:

  1. Maybe some people want the same features as other people. If it’s already been written, no reason to write it again.
  2. Even if the exact feature someone wants hasn’t been written, it’s probably a lot easier to modify an extension someone else has written than write one from scratch.

Yes, changes to the site would probably break extensions, and I wouldn’t expect Beeminder to try to keep from breaking them. But there are some benefits for Beeminder as a site too:

  1. Serves as an outlet for power users to get features (that can be implemented entirely client side) that aren’t a priority for Beeminder.
  2. Makes an implicit opinion poll of features power users would like to have.

Let me know if you’ve tried this or are interested in this idea (or think it’s terrible)!

4 Likes

Unless there’s a frontend API that Beeminder is going to commit to, this isn’t really feasible long term is it? I mean that it is probably more work for Beeminder to commit to not breaking extensions than to just implement some of these old chestnut UI feature requests. And, if you want to do something really zany with the frontend, you should probably just build your own on top of the backend API.

2 Likes

It’s true we wouldn’t want to commit to not breaking extensions. But a feature request in the form of an actually-implemented browser extension would carry a huge amount of weight. Especially with more than just the author actually using it.

The other answer is that if you’re willing to build a browser extension maybe you could send us a pull request instead? We intend to eventually open source our code and before we’re ready to do that we’re willing to give people we trust (which includes you two, @kenoubi and @drtall) access to the repo.

1 Like

I’m flattered, but I promise you don’t want me anywhere near your frontend code. :slight_smile:

That’s what I was hoping. In practice I doubt you’d break them that much, unless you were doing another total UI rewrite, and it wouldn’t be much effort to maintain them, at least compared to the effort of manually adjusting graph settings for 30 goals (which is apparently something someone is actually doing :confused:)

I’ll consider, but I will need to check my policies at work and I think it’ll be easier to get approval if it’s an open source project (which a browser extension could be, whereas Beeminder itself obviously isn’t at this time).

I wasn’t even necessarily committing to actually build any browser extensions myself by posting this, though the idea has occurred to me more than once. Was interested in whether it had occurred to anyone else, and especially whether they got as far as actually doing it, even for something trivial.

2 Likes

Just as a data point: There’s more than one person doing that. I [0] have about twenty goals I periodically tweak one by one to change my x-max to “a few months in the future.” And there’s more than just graph settings that require one-by-one manual tweaking when my global situation changes: take a break, for example.


[0] There are several other users whose galleries I’ve visited who have a dozen or more goals, too.

3 Likes