Publishing
To make your plugin available in Automation, you must register on the Plugin Portal and submit it as an npm-compatible package using npm pack
.
This guide covers everything from registration to publishing.
π’ Step 1: Register Your Organizationβ
Before publishing a plugin, your organization must be registered.
- Go to: automation.labxpert.io/portal
- Click Register as Publisher
- Fill in:
- Organization name
- Contact email
- Website (optional)
- Once approved, youβll receive a publisher ID
This ID must be used in your automation.json
.
π¦ Step 2: Prepare Your Pluginβ
Your plugin must be a plain JavaScript package.
your-plugin/
βββ automation.json # Required plugin definition
βββ index.js # Entrypoint JS file
βββ README.md # Plugin documentation
βββ package.json # Required for npm compatibility
βββ (optional) helpers/
TypeScript is not allowed in the final package.
If you're using TypeScript during development, compile to JavaScript first and submit only the compiled version.
Required filesβ
automation.json
index.js
package.json
README.md
π Example: automation.jsonβ
{
"id": "plugin-dhis2-uploader",
"name": "DHIS2 Uploader",
"version": "1.0.0",
"publisher": {
"id": "medx",
"name": "MedX International"
},
"entrypoint": "index.js",
"readme": "README.md",
"capabilities": {
"Observation": { "actions": ["receive"] }
},
"category": "system",
"system": {
"vendor": "DHIS2",
"product": "DHIS2",
"version": "2.39",
"authMethod": "basic",
"configFields": [
{ "key": "baseUrl", "label": "API URL", "type": "string", "required": true },
{ "key": "username", "label": "Username", "type": "string" },
{ "key": "password", "label": "Password", "type": "password" }
]
}
}
π€ Step 3: Package the Pluginβ
Run the following inside your plugin directory:
npm pack
This will create a file like:
plugin-dhis2-uploader-1.0.0.tgz
Thatβs the file youβll upload.
π¬ Step 4: Submit via Portalβ
- Visit the Plugin Portal
- Click Submit Plugin
- Upload your
.tgz
file - Fill in any metadata (if prompted)
Your automation.json
and README.md
will be extracted and validated.
π Step 5: Review & Approvalβ
Once submitted:
-
Automation runs automated validation
-
A reviewer checks:
- Plugin metadata
- Capabilities
- Safety (no dangerous APIs)
- Documentation quality
-
Youβll be notified by email once approved or with feedback
π Step 6: Publishβ
Once approved:
- Your plugin will appear in the Plugin Registry
- Its documentation will be extracted from
README.md
- It can now be installed by any Automation instance
π Updating Your Pluginβ
To publish a new version:
- Bump version in both
package.json
andautomation.json
- Run
npm pack
again - Upload the new
.tgz
file via the portal
β Summaryβ
Step | Description |
---|---|
Register | Sign up your organization on the portal |
Prepare Plugin | JS only, with required metadata + README |
Run npm pack | Generates the .tgz youβll upload |
Submit Plugin | Upload via portal for review |
Get Approved | Plugin appears in registry + Automation website |