Action Settings
Settings associated with an action instance, stored as JSON.
Actions
Example action provided in scaffolded plugin.
Auto Install Profiles
Bundled profiles can be automatically installed on plugin installation.
Built-in Layouts
Predefined layouts for touch strip display.
Commands
Commands for settings, feedback, images, and titles.
Custom Layouts
Define custom layouts using JSON files.
Custom Strings
Define custom localization strings accessible via streamDeck.i18n.translate.
Debugging
Dials & Touch Strip
Events
Events for dial down, rotate, up, and touch tap.
File Structure
Predefined directory layout for plugin source and compiled output.
Global Settings
Plugin-wide settings, accessible only by the plugin.
Layouts
Localized Resources
Resources to override manifest strings and provide custom localizations.
Manifest
Defines plugin metadata.
Manifest Encoder Layout
Set default layout via manifest property.
Manifest String Localization
Localize strings in the manifest such as action names and tooltips.
NPM Scripts
Pre-populated build and watch scripts for development.
onDeviceDidChange
Event fired when a device changes (e.g., name or size).
onDeviceDidConnect
Event fired when a device connects.
onDeviceDidDisconnect
Event fired when a device disconnects.
Open URL in Default Browser
Opens a URL in the user's default browser using streamDeck.system.openUrl().
Profile Management
Create, bundle, and switch Stream Deck profiles within plugins.
Programmatic Layout
Assign layout programmatically using setFeedbackLayout.
Programmatically
Property Inspectors
UI for configuring actions.
Reserved Layout Item Keys
Setup Wizard
CLI command to scaffold a basic Stream Deck plugin.
Switch to Profile
Plugins can switch to a bundled profile using its name.
System Wake Event
Provides onSystemDidWakeUp event to restore connections/state after system wake.
Trigger Descriptions
Type Safety
Define settings types for intellisense and type hints.
Update Trigger Descriptions
Updating Layouts
What is an Encoder?