Skip to content

Developing Custom Plugins

A plugin may be self-contained, meaning that everything from the back-end, front-end and integration with is include in its own plugin directory.

An example of this type of plugin would be the TTN-Stack Plugin, which is developed in Node.js for the back-end and Angular for the front-end.


To develop the backend, any technology may be used as long as it is able to run under a Docker container.

Under a directory called task, include the source code and any file necessary for the build and execution of the server, as well as the Dockerfile, with the CI system will use to generate the image for the plugin.

Checkout this example.


If the front-end is not integrated inside the container, where the back-end is located, a front-end may be developed with Angular and placed under a directory called gui.

Checkout this example. integration

The integration with Marketplace would be very similar or the same as any other plugin under the integrating services section, only in the case that the GUI is developed outside the container the user interface section must refer to the Angular settings.js file.