StreamDeckSharp 10.0.0
StreamDeckSharp is a simple (unofficial) .NET interface for the Elgato Stream Deck
Recent Changes
Quickstart (TL;DR)
Should work on all major operating systems.
I typically test on Windows and Linux (Debian, Ubuntu), but it should also work on macOS. See Wiki: Supported Platforms
- Add StreamDeckSharp reference (via nuget or download latest release)
- Add a using directive for StreamDeckSharp:
using StreamDeckSharp;
| I want to... | Code (C#) |
|---|---|
| create a device reference | var deck = StreamDeck.OpenDevice(); |
| set the brightness | deck.SetBrightness(50); |
| create bitmap for key | var bitmap = KeyBitmap.Create.FromFile("icon.png") |
| set key image | deck.SetKeyBitmap(keyId, bitmap) |
| clear key image | deck.ClearKey(keyId) |
| process key events | deck.KeyStateChanged += KeyHandler; |
Make sure to dispose the device reference correctly (use using whenever possible)
Examples
If you want to see some examples take a look at the example projects.
Here is a short example called "Austria". Copy the code and start hacking :wink:
using System;
using OpenMacroBoard.SDK;
using StreamDeckSharp;
namespace StreamDeckSharp.Examples.Austria
{
class Program
{
static void Main(string[] args)
{
//This example is designed for the 5x3 (original) Stream Deck.
//Create some color we use later to draw the flag of austria
var red = KeyBitmap.Create.FromRgb(237, 41, 57);
var white = KeyBitmap.Create.FromRgb(255, 255, 255);
var rowColors = new KeyBitmap[] { red, white, red };
//Open the Stream Deck device
using (var deck = StreamDeck.OpenDevice())
{
deck.SetBrightness(100);
//Send the bitmap informaton to the device
for (int i = 0; i < deck.Keys.Count; i++)
deck.SetKeyBitmap(i, rowColors[i / 5]);
Console.ReadKey();
}
}
}
}
Here is what the "Rainbow" example looks like after pressing some keys

Play games on a StreamDeck
For example minesweeper (take a look at the example projects if you are interested in that)
You can even play videos on a StreamDeck
Here is a short demo, playing a video on a stream deck device.

*The glitches you can see are already fixed.
More about that in the Wiki: Play video on StreamDeck
This project is not related to Elgato Systems GmbH in any way
Showing the top 20 packages that depend on StreamDeckSharp.
| Packages | Downloads |
|---|---|
|
Lib.StreamDeck
Package Description
|
28 |
|
Lib.StreamDeck
Package Description
|
27 |
|
Lib.StreamDeck
Package Description
|
21 |
|
Lib.StreamDeck
Package Description
|
13 |
.NET 10.0
- OpenMacroBoard.SDK (>= 10.0.0)
- HidSharp (>= 2.6.4)
- SixLabors.ImageSharp (>= 3.1.12)
| Version | Downloads | Last updated |
|---|---|---|
| 10.0.0 | 5 | 06/22/2026 |
| 6.1.0 | 22 | 10/26/2025 |
| 6.0.0 | 30 | 02/19/2025 |
| 5.0.0 | 31 | 02/19/2025 |
| 4.2.0-preview | 30 | 02/19/2025 |
| 4.1.0-preview | 30 | 02/19/2025 |
| 4.0.0-preview | 30 | 02/19/2025 |
| 3.2.0 | 30 | 02/19/2025 |
| 3.0.0 | 30 | 02/19/2025 |
| 2.2.0 | 29 | 02/19/2025 |
| 2.1.0 | 30 | 02/19/2025 |
| 2.0.0 | 29 | 02/19/2025 |
| 1.0.0 | 27 | 02/19/2025 |
| 0.3.5 | 30 | 02/19/2025 |
| 0.3.4 | 30 | 02/19/2025 |
| 0.3.2 | 29 | 02/19/2025 |
| 0.3.1 | 30 | 02/19/2025 |
| 0.3.0 | 30 | 02/19/2025 |
| 0.2.0 | 31 | 02/19/2025 |
| 0.1.10 | 28 | 02/19/2025 |
| 0.1.9 | 30 | 02/19/2025 |
| 0.1.8 | 30 | 02/19/2025 |
| 0.1.7 | 30 | 02/19/2025 |
| 0.1.5 | 30 | 02/19/2025 |
| 0.1.4 | 30 | 02/19/2025 |
| 0.1.2 | 30 | 02/19/2025 |
| 0.1.1 | 29 | 02/19/2025 |