Skip to main content

Plugin Manifest

TagoCore Plugins need a manifest to be to loaded by TagoCore's Plugin Environment. This manifest is defined within the package.json of your project.

Package attributes

To generate a Plugin Manifest, you must add a tagocore property to it, this is a sample JSON showing all attributes of the object:

{
"tcore": {
"name": "My Plugin Name",
"short_description": "Explain what your Plugin does in a few words",
"full_description": "./README.md",
"icon": "./assets/icon.png",
"types": [
"service",
"action-type",
"action-trigger",
"database"
"encoder"
],
"permissions": [
"device",
"device-data",
"action",
"analysis"
]
},
}

name

This property must contain the name of your Plugin. This is the same name that will appear in the Plugin Store when you publish your plugin.

short_description

Explain in up to 100 characters what your Plugin does.

full_description

This property should contain a markdown file that will be rendered in the body of your Plugin Configuration. In the markdown file you explain your Plugin and its API in-depth. Developers usually use the README.md file in the root of the project.

Good to know

TagoCore doesn't support html in the full_description file.

icon

Set the path of an image file to act as your Plugin's main icon. We recommend you use a PNG image for the icon.

types

This is an array that should contain all module types used by your Plugin. For instance, if you are using a Service Module and a Payload Encoder Module in your code, you should have an array like this:

["service", "encoder"]

Here are all the types of modules:

permissions

This array specifies which API calls you will be able to make to TagoCore's API via the core object. For instance, if you wish to create a new Device via the core.createDevice function, you have need to add the device property to this permissions array.

These are all the possibilities for this array:

["action", "analysis", "device", "device-data"]