After following the plugin tutorial to completion, we are ready to begin our own implementation of a plugin. It will be different from the plugin tutorial in many aspects, but the plugin tutorial provided us with a wonderful starting point. We have learned how to do the following:

  • How to successfully use cookiecutter to create a template
  • How to create a link in OctoPrint
  • How to create a tab in OctoPrint
  • How to begin to make the plugin user adjustable
  • How to put a tab under settings

The other thing that we have learned is that because we are using python as the main language, if you even mess up one space, the plugin will not be visible when you launch the server (this has caused many headaches). The languages that we are using include; python – main programming, css- style, java script- binding links (so far), and jinja2- templating.

The next thing on our list is to use cookiecutter to create another plugin template, and fill out the skeleton with the appropriate names/etc. Then, we must figure out exactly which OctoPrint libraries that we will inherit from. We have recorded this before, mainly it will be the OctoPrint.Settings library. However, the last time that we checked this, under each function in the library it said to raise a NOTIMPLEMENTED ERROR, which led us to believe that this library is still in the works. The next thing that we will do is use our frontend knowledge from the tutorial to create a tab under the settings bar, and have the user enter a time (in minutes) to activate a timer. We will go from there.


It has been a difficult week because my partner was out of school on Wednesday, and Friday was Good Friday so we were not in class. We will continue to progress to the best of our abilities.