Universal DevTools Kit SDK / @u-devtools/core / PluginClientInstance
Interface: PluginClientInstance
Defined in: index.ts:478
Plugin Client Instance - Definition of a plugin's UI and behavior in Client context. This is the main export from a plugin's client.ts file.
Example
import type { PluginClientInstance } from '@u-devtools/core';
const plugin: PluginClientInstance = {
name: 'My Plugin',
icon: 'Cube',
settings: { },
commands: [ ],
renderMain(container, api) {
// Render your plugin UI
return () => { };
}
};
export default plugin;Properties
commands?
optionalcommands:PluginCommand[]
Defined in: index.ts:494
Commands accessible via Command Palette (Cmd+K / Ctrl+K)
generalMenuItems?
optionalgeneralMenuItems:GeneralMenuItem[]
Defined in: index.ts:500
Menu items for the "General" section in ActivityBar. Allows plugins to add their actions to the general menu.
hideFromMenu?
optionalhideFromMenu:boolean
Defined in: index.ts:488
Hide plugin from main ActivityBar menu. Plugin will still be accessible via navigation API or generalMenuItems.
icon
icon:
string
Defined in: index.ts:482
Heroicons icon name (e.g., 'Cube', 'MagnifyingGlass', 'WrenchScrewdriver')
name
name:
string
Defined in: index.ts:480
Display name shown in DevTools UI
renderMain()?
optionalrenderMain: (el,api,options) =>UnmountFn
Defined in: index.ts:519
Render main panel (optional). This is the primary UI for your plugin.
Parameters
| Parameter | Type | Description |
|---|---|---|
el | HTMLElement | Container element to render into |
api | ClientApi | Client API for plugin functionality |
options | { bridge: AppBridge<any>; } | Additional options including AppBridge |
options.bridge | AppBridge<any> | - |
Returns
Cleanup function called when plugin is unmounted
renderSettings()?
optionalrenderSettings: (el,api,options) =>UnmountFn
Defined in: index.ts:529
Render custom settings UI (optional). If not provided, settings will use the default form based on settings schema.
Parameters
| Parameter | Type | Description |
|---|---|---|
el | HTMLElement | Container element to render into |
api | ClientApi | Client API for plugin functionality |
options | { bridge: AppBridge<any>; } | Additional options including AppBridge |
options.bridge | AppBridge<any> | - |
Returns
Cleanup function called when plugin is unmounted
renderSidebar()?
optionalrenderSidebar: (el,api,options) =>UnmountFn
Defined in: index.ts:509
Render sidebar panel (optional).
Parameters
| Parameter | Type | Description |
|---|---|---|
el | HTMLElement | Container element to render into |
api | ClientApi | Client API for plugin functionality |
options | { bridge: AppBridge<any>; } | Additional options including AppBridge |
options.bridge | AppBridge<any> | - |
Returns
Cleanup function called when plugin is unmounted
settings?
optionalsettings:PluginSettingsSchema
Defined in: index.ts:491
Settings schema for user-configurable options