diff --git a/docs/index.rst b/docs/index.rst index 774c6da1..3375a90c 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -18,4 +18,5 @@ Contents api/index.rst events/index.rst + plugins/index.rst diff --git a/docs/plugins/index.rst b/docs/plugins/index.rst new file mode 100644 index 00000000..c71261c2 --- /dev/null +++ b/docs/plugins/index.rst @@ -0,0 +1,61 @@ +.. _sec-plugins: + +##################### +Plugins Documentation +##################### + +.. contents:: + +Starting with OctoPrint 1.2.0, there's now a plugin system in place which allows to individually +extend OctoPrint's functionality. + +Right now plugins can be used to extend OctoPrint's settings dialog, to execute specific tasks on server startup and +shutdown or to provide custom (API) endpoints with special functionality. More plugin types are planned for the future. + +.. _sec-plugins-installation: + +Installing Plugins +================== + +Plugins can be installed either by unpacking them into one of the configured plugin folders (regularly those are +``/plugins`` and ``~/.octoprint/plugins`` or by installing them as regular python modules via ``pip``. +Please refer to the documentation of the plugin for installations instructions. + +The latter is the more common case since all currently published plugins not bundled with OctoPrint can and should be installed +this way. + +For a plugin available on the Python Package Index (PyPi), the process is as simple as issuing a + +.. code-block:: bash + + pip install + +For plugins not available on PyPi, you'll have to give ``pip`` an URL from which to install the package (e.g. the URL to +a ZIP file of the current master branch of a Github repository hosting a plugin, or even a ``git+https`` URL), example: + +.. code-block:: bash + + pip install https://github.com/OctoPrint/OctoPrint-Growl/archive/master.zip + +See `the pip install documentation `_ for what URL +types are possible. + +.. _sec-plugins-available: + +Available Plugins +================= + +Currently there's no such thing as a centralized plugin repository for available plugins. + +Plugins may be found in the lists provided in `the OctoPrint wiki `_ +and on the `OctoPrint organization Github page `_. + +.. _sec-plugins-developing: + +Developing Plugins +================== + +.. todo:: + + A section on how to develop plugins yourself, including a tutorial creating an exemplatory plugin as well as + a documentation of the plugin API, will be added in the near future.