Skip to content

Plugins & Parameters

A plugin is a reusable Groovy library that packages can include and configure through package.json.

Repository location:

text
plugins/{pluginName}/

Plugin ID convention

Plugins are referenced by stable IDs. The repository uses this convention:

text
com.iflowkit.plugin.{name}

Examples:

  • com.iflowkit.plugin.email
  • com.iflowkit.plugin.units

Declaring a plugin

json
{
  "plugins": {
    "email": {
      "id": "com.iflowkit.plugin.email",
      "parameters": {
        "defaultSenderAddress": "no-reply@iflowkit.local"
      }
    }
  }
}

Reading plugin parameters

Package code can fetch plugin parameters at runtime through PackageContext.

Conceptual pattern:

groovy
import com.iflowkit.core.pkg.PackageContext

static Map parametersById(String pluginId) {
  return PackageContext.load(Package.PACKAGE_ID).pluginParametersById(pluginId)
}

The sample package provides helper accessors under:

text
packages/iflowkit-email/iflowkit/Plugins.groovy

Current plugin references