plugin sdk
Publish plugins against independently versioned SDKs.
The SDK package, the plugin’s metadata.version, PLUGIN_API_VERSION and the
DSUI product version are separate contracts. A Plugin SDK release does not
publish the product or upgrade installed runtimes.
SDKs ship TypeScript source for Bun and TS-aware bundlers, including the types.
Pin the SDK version you tested and document the minimum DSUI release and optional
host capabilities your plugin needs. metadata.apiVersion must match the host’s
supported PLUGIN_API_VERSION.
For local development, use source: local and the package path. For an installed
package, configure its server entry and optional browser bundle:
plugins:
example-plugin:
package: "@your-org/dsui-plugin-example"
browserBundle: "@your-org/dsui-plugin-example/browser"
enabled: trueThe package must already be installed and resolvable by the host; this configuration
does not publish or download a private workspace package from npm. Declare
dsui.entry and dsui.browser for source-built plugins. See the
example package
for browser exports and configuration.
Git source builds support a repository, ref and optional subdirectory. A prebuilt GitHub plugin artifact uses a full commit pin and the integrity of its plugin manifest; these are distinct installation paths. Review trusted plugin code before loading it.
Plugin SDK uses plugin-sdk-vX.Y.Z tags, its own changelog and npm package.
Adapter SDK dependencies are versioned independently. The old
@northgraindata/dsui/plugin-sdk product export remains during migration; new
extensions should use @northgraindata/dsui-plugin-sdk.
See release policy for Changesets, CI and the publication process.