Skip to content
Stream Deck SDK: Plugin Template
JavaScript CSS HTML
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
Release Latest precompiled version Apr 16, 2019
Sources/com.elgato.template.sdPlugin Merge latest changes May 27, 2019
LICENSE Initial version Feb 28, 2019 Fix minor formatting issues in Mar 26, 2019

Stream Deck Plugin Template

The Stream Deck Plugin Template is a boilerplate template to let you get started quickly when writing a Javascript plugin for Stream Deck.

Stream Deck Plugin Template requires Stream Deck 4.1 or later.


Stream Deck Plugin Template is a complete plugin that shows you how to

  • load and save settings using Stream Deck's persistent store
  • setup and communicate with the Property Inspector
  • pass messages directly from Property Inspector to the plugin (and vice versa)
  • localize your Property Inspector's UI to another language

If you think about creating a Stream Deck plugin, it's a good idea to start with this template, because it already implements all code required to communicate from your plugin to the Property Inspector and to your Stream Deck.

There are also a bunch of utility helpers included, which makes it easy to process messages sent and received via Websockets.

Together with the PISamples library it helps you create your full-fledged Stream Deck plugin fast.



  • code written in Javascript
  • cross-platform (macOS, Windows)
  • localization support
  • styled Property Inspector included
  • Property Inspector contains all required boilerplate code to let you instantly work on your plugin's code.

Quickstart: From Template to Plugin in under a minute

A short guide to help you getting started quickly.


  • Download or clone the template plugin.

Do a search/replace on strings in the template's files:

Use your utility of choice (or your terminal) to do a full string replace using:

Replace all occurences of:

com.elgato.template with your.identifier.plugin


Stream Deck Template with Your Plugin Name

Fire up your preferred code-editor and open app.js.

Remove what you don't need and start coding (e.g. in the onKeyDown method)

Happy coding...

You can’t perform that action at this time.