Obsidian Plugin for Beeminder

Creating this thread to document my journey as I attempt to create a new Obsidian Plugin that connects with the beeminder API.

I searched through Obsidian’s community plugins, and was shocked to find that there was only 1 related to beeminder, the “Beeminder Word Count” plugin, which allows you to specifically send the word count of your current Obsidian note to 1 beeminder goal. Clearly there is a desire for Beeminder plugins in Obsidian, as this plugin has over 4000 downloads despite last update being 3 years ago !

I find this functionality limited for my personal desires.

I personally desire a feature set of:

  • adding up all completed or uncompleted tasks in current note and sending to a beeminder
  • adding up all completed or uncompleted tasks in specific note and sending to a beeminder (can be executed no matter which note you currently have opened)
  • automated polling beeminder updates
  • ability to add data to multiple beeminders (the current obsidian plugin only allows for one)
  • grabbing specific dataview values and being able to do some logic/math related to them, in order to send that data to a beeminder

If someone already knows an obsidian plugin that is working to these features, let me know !

And also for the Obsidian-users out there, please let me know if there are any features you would want in an Obsidian to beeminder plugin.

I’ll be prioritizing the features that can benefit my workflows/life, but will definitely consider to implement any suggestions…


Counting tasks of a specific completion state in a specific note is exactly what I want! :open_mouth:

Made a beeminder to track contributions to this thread:

Edit: I think I made this goal private by accident. It should show up now.



Today I…

  1. created the github repo for the plugin:
    GitHub - napkindev/beeminder-obsidian-plugin

  2. cloned the repo into my testing Obsidian vault

  3. opened the repo in vscode and built the main.ts file into a main.js

  4. created a “hello world” test plugin and got it working to output to the obsidian dev console