|
2 | 2 |
|
3 | 3 | [](https://docs.elgato.com/sdk)
|
4 | 4 |
|
5 |
| -# Maker CLI (Beta) |
| 5 | +# Stream Deck CLI |
6 | 6 |
|
7 |
| -[](https://www.npmjs.com/package/@elgato/cli) |
8 |
| -[](https://github.com/elgatosf/cli/actions) |
9 |
| -[](https://docs.elgato.com/sdk) |
10 |
| -[](https://discord.gg/GehBUcu627) |
| 7 | +[](https://docs.elgato.com/streamdeck/cli) |
11 | 8 | [](https://elgato.com)
|
| 9 | +[](https://discord.gg/GehBUcu627) |
| 10 | +[](https://www.npmjs.com/package/@elgato/cli) |
| 11 | +[](https://github.com/elgatosf/cli/actions) |
12 | 12 |
|
13 | 13 | </div>
|
14 | 14 |
|
15 | 15 | ## Installation
|
16 | 16 |
|
17 | 17 | ```
|
18 |
| -npm install -g @elgato/cli |
| 18 | +npm install -g @elgato/cli@latest |
19 | 19 | ```
|
20 | 20 |
|
21 | 21 | ## Usage
|
@@ -43,305 +43,15 @@ Alias:
|
43 | 43 | sd
|
44 | 44 | ```
|
45 | 45 |
|
46 |
| -## Commands |
47 |
| - |
48 |
| -- [create](#%EF%B8%8F-create)<br />Creation wizard. |
49 |
| -- [link](#-link)<br />Links the plugin to Stream Deck. |
50 |
| -- [restart](#%EF%B8%8F-restart)<br />Starts the plugin in Stream Deck; if the plugin is already running, it is stopped first. |
51 |
| -- [stop](#-stop)<br />Stops the plugin in Stream Deck. |
52 |
| -- [validate](#sd-validate)<br />Validates the Stream Deck plugin. |
53 |
| -- [pack](#sd-pack)<br />Creates a .streamDeckPlugin file from the plugin. |
54 |
| -- [dev](#%EF%B8%8F-dev)<br />Enables developer mode. |
55 |
| -- [config](#%EF%B8%8F-config)<br />Manage the local configuration. |
56 |
| - |
57 |
| -## ✏️ create |
58 |
| - |
59 |
| -Creation wizard. |
60 |
| - |
61 |
| -### Synopsis |
62 |
| - |
63 |
| -``` |
64 |
| -streamdeck create |
65 |
| -``` |
66 |
| - |
67 |
| -### Description |
68 |
| - |
69 |
| -The creation wizard will guide you through creating Stream Deck plugins with our official Node.js SDK, and provides all scaffolding required to get started quickly. As part of the wizard, developer mode is enabled, and the plugin built and linked to Stream Deck making it ready for use. |
70 |
| - |
71 |
| -> To learn more about creating Stream Deck plugins with Node.js, see our [Stream Deck SDK](https://github.com/elgatosf/streamdeck). |
72 |
| -
|
73 |
| -#### See Also |
74 |
| - |
75 |
| -- [dev](#%EF%B8%8F-dev) |
76 |
| -- [link](#-link) |
77 |
| - |
78 |
| -## 🔗 link |
79 |
| - |
80 |
| -Links the plugin to Stream Deck. |
81 |
| - |
82 |
| -### Synopsis |
83 |
| - |
84 |
| -``` |
85 |
| -streamdeck link [path] |
86 |
| -``` |
87 |
| - |
88 |
| -### Description |
89 |
| - |
90 |
| -Links the specified path (folder) to Stream Deck, effectively installing the plugin, allowing it to be accessed from within Stream Deck. When the path is unspecified, the current working directory is used. |
91 |
| - |
92 |
| -Note: The folder name should reflect the UUID of the plugin, and must be suffixed with `.sdPlugin`, eg. `com.elgato.wave-link.sdPlugin`. |
93 |
| - |
94 |
| -## ♻️ restart |
95 |
| - |
96 |
| -Starts the plugin in Stream Deck; if the plugin is already running, it is stopped first. |
97 |
| - |
98 |
| -### Synopsis |
99 |
| - |
100 |
| -``` |
101 |
| -streamdeck restart <uuid> |
102 |
| -
|
103 |
| -alias: r |
104 |
| -``` |
105 |
| - |
106 |
| -### Description |
107 |
| - |
108 |
| -Instructs Stream Deck to start the plugin, as determined by the UUID. If the plugin is already running within Stream Deck, it is first stopped and then started. As part of restarting the plugin all resources associated with the plugin, including manifest definitions, are reloaded. |
109 |
| - |
110 |
| -#### See Also |
111 |
| - |
112 |
| -- [stop](#-stop) |
113 |
| - |
114 |
| -## 🛑 stop |
115 |
| - |
116 |
| -Stops the plugin in Stream Deck. |
117 |
| - |
118 |
| -### Synopsis |
119 |
| - |
120 |
| -``` |
121 |
| -streamdeck stop <uuid> |
122 |
| -
|
123 |
| -alias: s |
124 |
| -``` |
125 |
| - |
126 |
| -### Description |
127 |
| - |
128 |
| -Instructs Stream Deck to stop the plugin, as determined by the UUID. When stopped, the plugin and all of its resources are unloaded from Stream Deck allowing the plugin to be changed. |
129 |
| - |
130 |
| -#### See Also |
131 |
| - |
132 |
| -- [restart](#%EF%B8%8F-restart) |
133 |
| - |
134 |
| -<h3 id="sd-validate"> |
135 |
| - ✅ validate |
136 |
| -</h3> |
137 |
| - |
138 |
| -Validates the Stream Deck plugin. |
139 |
| - |
140 |
| -### Synopsis |
141 |
| - |
142 |
| -``` |
143 |
| -streamdeck validate [path] |
144 |
| -
|
145 |
| -Arguments: |
146 |
| - path Path of the plugin to validate |
147 |
| -
|
148 |
| -Options: |
149 |
| - --force-update-check Forces an update check (default: false) |
150 |
| - --no-update-check Disables updating schemas |
151 |
| -``` |
152 |
| - |
153 |
| -### Description |
154 |
| - |
155 |
| -Validates the Stream Deck plugin in the current working directory, or `path` when specified, and outputs the validation results. By default, the command will automatically check and install validation rule updates; this check occurs daily, unless forced with `--force-update-check` or prevented with `--no-update-check`. |
156 |
| - |
157 |
| -### Configuration |
158 |
| - |
159 |
| -#### `--force-update-check` |
160 |
| - |
161 |
| -- Default: `false` |
162 |
| -- Type: Boolean |
163 |
| - |
164 |
| -Forces an update check of new validation rules; by default, an update check will occur once a day. Cannot be used in conjunction with `--no-update-check`. |
165 |
| - |
166 |
| -#### `--no-update-check` |
167 |
| - |
168 |
| -- Default: `false` |
169 |
| -- Type: Boolean |
170 |
| - |
171 |
| -Prevents an update check of new validation rules. This configuration option is recommended when using the CLI as part of a build pipeline. Cannot be used in conjunction with `--force-update-check`. |
172 |
| - |
173 |
| -<h3 id="sd-pack"> |
174 |
| - 📦 pack |
175 |
| -</h3> |
176 |
| - |
177 |
| -Creates a .streamDeckPlugin file from the plugin. |
178 |
| - |
179 |
| -### Synopsis |
180 |
| - |
181 |
| -``` |
182 |
| -streamdeck pack [options] [path] |
183 |
| -
|
184 |
| -Arguments: |
185 |
| - path Path of the plugin to pack |
186 |
| -
|
187 |
| -Options: |
188 |
| - --dry-run Generates a report without creating a package (default: false) |
189 |
| - -f|--force Forces saving, overwriting an package if it exists (default: false) |
190 |
| - -o|--output <output> Specifies the path for the output directory |
191 |
| - --version <version> Plugin version; value will be written to the manifest" |
192 |
| - --force-update-check Forces an update check (default: false) |
193 |
| - --no-update-check Disables updating schemas |
194 |
| -
|
195 |
| -alias: bundle |
196 |
| -``` |
197 |
| - |
198 |
| -### Description |
199 |
| - |
200 |
| -Creates a `.streamDeckPlugin` installer file allowing the plugin to be distributed. The plugin must pass [validation](#sd-validate) prior to bundling. |
201 |
| - |
202 |
| -By default, all files within the specified `path` are included except `.git`, `/.env*`, `*.log`, and `*.js.map` directories and files. To specify directories or files that should be ignored, a `.sdignore` file can be created in the root of the plugin, i.e. alongside the manifest, using [`.gitignore` specification](https://git-scm.com/docs/gitignore). |
203 |
| - |
204 |
| -### Example |
205 |
| - |
206 |
| -Create a `.streamDeckPlugin` of the plugin located in `com.elgato.test.sdPlugin/`, writing the packaged file to a `dist/` folder, specifying the new version. |
207 |
| - |
208 |
| -``` |
209 |
| -streamdeck pack com.elgato.test.sdPlugin/ --output dist/ |
210 |
| -``` |
211 |
| - |
212 |
| -Create a `.streamDeckPlugin` of the current working directory, specifying a new version of the plugin. |
213 |
| - |
214 |
| -``` |
215 |
| -streamdeck pack --version 0.8.2 |
216 |
| -``` |
217 |
| - |
218 |
| -Generate a report for the plugin in the current working directory, without creating a `.streamDeckPlugin` file. |
219 |
| - |
220 |
| -``` |
221 |
| -streamdeck pack --dry-run |
222 |
| -``` |
223 |
| - |
224 |
| -### Configuration |
225 |
| - |
226 |
| -#### `--dry-run` |
227 |
| - |
228 |
| -- Default: `false` |
229 |
| -- Type: Boolean |
230 |
| - |
231 |
| -Generates a report without creating a package. |
232 |
| - |
233 |
| -#### `-f|--force` |
234 |
| - |
235 |
| -- Default: `false` |
236 |
| -- Type: Boolean |
237 |
| - |
238 |
| -Determines whether to overwrite the existing `.streamDeckPlugin` file if one already exists at the specified `output` directory. |
239 |
| - |
240 |
| -#### `-o|--output <output>` |
241 |
| - |
242 |
| -- Default: `cwd` |
243 |
| -- Type: String |
244 |
| - |
245 |
| -Specifies the path for the output directory where the `.streamDeckPlugin` file will be created. |
246 |
| - |
247 |
| -#### `--version <version>` |
248 |
| - |
249 |
| -- Default: `undefined` |
250 |
| -- Type: String (semver) |
251 |
| - |
252 |
| -Plugin version; value will be written to the manifest's `Version` property prior to packaging the plugin. |
253 |
| - |
254 |
| -#### `--force-update-check` |
255 |
| - |
256 |
| -- Default: `false` |
257 |
| -- Type: Boolean |
258 |
| - |
259 |
| -Forces an update check of new validation rules; by default, an update check will occur once a day. Cannot be used in conjunction with `--no-update-check`. |
260 |
| - |
261 |
| -#### `--no-update-check` |
262 |
| - |
263 |
| -- Default: `false` |
264 |
| -- Type: Boolean |
265 |
| - |
266 |
| -Prevents an update check of new validation rules. This configuration option is recommended when using the CLI as part of a build pipeline. Cannot be used in conjunction with `--force-update-check`. |
267 |
| - |
268 |
| -## 🏗️ dev |
269 |
| - |
270 |
| -Enables developer mode. |
271 |
| - |
272 |
| -### Synopsis |
273 |
| - |
274 |
| -``` |
275 |
| -streamdeck dev [-d|--disable] |
276 |
| -``` |
277 |
| - |
278 |
| -### Description |
279 |
| - |
280 |
| -Developer mode enables the local development of Stream Deck plugins, and provides the Maker with additional capabilities for building and debugging with Stream Deck. Whilst enabled, Node.js plugins can be executed, and it is also possible to debug the property inspector locally at `http://localhost:23654/`. |
281 |
| - |
282 |
| -## ⚙️ config |
283 |
| - |
284 |
| -Manage the local configuration. |
285 |
| - |
286 |
| -### Synopsis |
287 |
| - |
288 |
| -``` |
289 |
| -streamdeck config set <key>=<value> [<key>=<value>...] |
290 |
| -streamdeck config unset <key> [<key>...] |
291 |
| -streamdeck config list |
292 |
| -streamdeck config reset |
293 |
| -``` |
294 |
| - |
295 |
| -### Description |
296 |
| - |
297 |
| -The CLI gets its configuration settings from the user's local environment. These configuration settings define the output of commands and how they're executed, and enable customization of interaction. The `streamdeck config` command can be used to update and manage these settings. |
298 |
| - |
299 |
| -#### Sub-commands |
300 |
| - |
301 |
| -#### set |
302 |
| - |
303 |
| -``` |
304 |
| -streamdeck config set <key>=<value> [<key>=<value>...] |
305 |
| -``` |
306 |
| - |
307 |
| -Sets each of the configuration keys to the value provided. |
308 |
| - |
309 |
| -#### unset |
310 |
| - |
311 |
| -``` |
312 |
| -streamdeck config <key> [<key>...] |
313 |
| -``` |
314 |
| - |
315 |
| -Sets each of the configuration keys to their default values. |
316 |
| - |
317 |
| -#### reset |
318 |
| - |
319 |
| -``` |
320 |
| -streamdeck config reset |
321 |
| -``` |
322 |
| - |
323 |
| -Resets all configuration keys to their default values. |
324 |
| - |
325 |
| -#### list |
326 |
| - |
327 |
| -``` |
328 |
| -streamdeck config list |
329 |
| -``` |
330 |
| - |
331 |
| -Lists the defined configuration, eg. values defined using [config set](#set). |
332 |
| - |
333 |
| -### Configuration |
334 |
| - |
335 |
| -#### reduceMotion |
336 |
| - |
337 |
| -- Default: `false` |
338 |
| -- Type: Boolean |
| 46 | +## Creating a Stream Deck plugin |
339 | 47 |
|
340 |
| -Determines whether feedback provided should prefer reduced motion; when `true`, the busy indicator will be rendered as a static indicator. |
| 48 | +The `streamdeck create` command enables you to scaffold a new Stream Deck plugin with ease. Running the command will initialize the creation wizard, and guide you through creating a new plugin. |
341 | 49 |
|
342 |
| -#### packageManager |
| 50 | +<p align="center"> |
| 51 | + <img src="./assets/cli-create.gif"> |
| 52 | +</p> |
343 | 53 |
|
344 |
| -- Default: `npm` |
345 |
| -- Type: bun | npm | pnpm | yarn |
| 54 | +## Further Reading |
346 | 55 |
|
347 |
| -Determines the package manager to use when installing dependencies for every new project. |
| 56 | +- Learn more about [Stream Deck CLI commands](https://docs.elgato.com/streamdeck/cli). |
| 57 | +- Read about [getting started with the Stream Deck SDK](https://docs.elgato.com/sdk). |
0 commit comments