<p align="center">
<a>
<img src="https://raw.githubusercontent.com/gri-gus/streamdeck-python-sdk/main/assets/images/cover.png" alt="streamdeck-python-sdk">
</a>
</p>
<p align="center">
<a href="https://pypi.org/project/streamdeck-sdk" target="_blank">
<img src="https://img.shields.io/pypi/v/streamdeck-sdk" alt="PyPI">
</a>
<a href="https://pypi.org/project/streamdeck-sdk" target="_blank">
<img src="https://static.pepy.tech/badge/streamdeck-sdk" alt="PyPI">
</a>
<a href="https://opensource.org/licenses/Apache-2.0" target="_blank">
<img src="https://img.shields.io/badge/License-Apache_2.0-blue.svg" alt="Apache">
</a>
<a href="https://docs.elgato.com/sdk" target="_blank">
<img src="https://badgen.net/badge/Elgato/doc/blue" alt="Elgato">
</a>
</p>
<p align="center">
<a href="https://github.com/gri-gus/streamdeck-python-sdk" target="_blank">
<img src="https://img.shields.io/badge/github-%23121011.svg?style=for-the-badge&logo=github&logoColor=white" alt="GitHub">
</a>
</p>
# streamdeck-python-sdk
Library for creating Stream Deck plugins in Python.
**Supported operating systems:**
* MacOS: 10.14 or later
* Windows: 10 or later
**Supported Python versions:** 3.8 or later
## Installation
> ⚠️ For correct operation on Windows, it is recommended to enable `LongPaths` support in
> the system: [manual](https://www.backupery.com/how-to-enable-ntfs-long-paths-in-windows/).
> Without this setting, problems with installation and use may occur!
```shell
pip install "streamdeck-sdk[dev]"
```
During this installation, additional libraries needed for development are installed:
* [streamdeck-sdk-pi](https://pypi.org/project/streamdeck-sdk-pi) - Property Inspector generator in Python
* [streamdeck-sdk-cli](https://pypi.org/project/streamdeck-sdk-cli) - useful command line utilities
> ⚠️ These libraries should not be present in the plugin's `requirements.txt`.
## Features
* Ease of use. You can quickly create your own plugin without having to understand how websockets and
other technologies work.
* Fully typed, using [pydantic](https://github.com/pydantic/pydantic).
* Includes image to base64 converters for easy installation of icons on keys.
* Includes a decorator for functions and methods to run on a separate thread.
* Exception logging and easy logging configuration.
* Debug mode via `PyCharm` or other debugging tools.
* A complete protocol for interaction with the Stream Deck application has been implemented.
* Quick start of a project via the console command `streamdeck_sdk startproject`.
* Build the project using the `streamdeck_sdk build` console command.
* Property Inspector Generator. Write code in Python and get html and js for PI.
## ⚠️ Limitations
1. During installation and update of the plugin, the Internet must be available.
### Windows
1. Plugin requirements should take no longer than 30 seconds to install. This is a feature of Stream Deck on Windows,
since the program restarts the plugin if a websocket connection has not been established within 30 seconds.
Therefore, you need a good Internet connection when installing and updating the plugin.
## Examples
[LoremFlickr](https://github.com/gri-gus/loremflickr-streamdeck-plugin) - Plugin for installing images on a button from
the LoremFlickr site. Supports MacOS and Windows.
[Proxy Manager](https://github.com/gri-gus/proxymanager-streamdeck-plugin) - Plugin for enabling and disabling
proxies on MacOS. Periodically polls the proxy status through a separate thread.
[One-time password](https://github.com/gri-gus/otp-streamdeck-plugin) - Plugin for generating one-time passwords,
like in Google Authenticator. Has several Actions. Supports MacOS and Windows.
---
See full description and usage examples on
[GitHub](https://github.com/gri-gus/streamdeck-python-sdk)
Raw data
{
"_id": null,
"home_page": null,
"name": "streamdeck-sdk",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "property inspector, property inspector generator, streamdeck property inspector generator, streamdeck property inspector, streamdeck pi, python, sdk, streamdeck, streamdeck-sdk, streamdeck_sdk, stream deck sdk, stream deck, elgato, elgato sdk, elgato stream deck, streamdeck-python-sdk, streamdeck_python_sdk, streamdeck python sdk",
"author": null,
"author_email": "Grigoriy Gusev <thegrigus@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/d4/28/45a6c41739dc280220fcb8f58d10b94a9ea81701e756a2f8757527ddd231/streamdeck_sdk-1.2.1.tar.gz",
"platform": null,
"description": "<p align=\"center\">\n <a>\n <img src=\"https://raw.githubusercontent.com/gri-gus/streamdeck-python-sdk/main/assets/images/cover.png\" alt=\"streamdeck-python-sdk\">\n </a>\n</p>\n\n<p align=\"center\">\n <a href=\"https://pypi.org/project/streamdeck-sdk\" target=\"_blank\">\n <img src=\"https://img.shields.io/pypi/v/streamdeck-sdk\" alt=\"PyPI\">\n </a>\n <a href=\"https://pypi.org/project/streamdeck-sdk\" target=\"_blank\">\n <img src=\"https://static.pepy.tech/badge/streamdeck-sdk\" alt=\"PyPI\">\n </a>\n <a href=\"https://opensource.org/licenses/Apache-2.0\" target=\"_blank\">\n <img src=\"https://img.shields.io/badge/License-Apache_2.0-blue.svg\" alt=\"Apache\">\n </a>\n <a href=\"https://docs.elgato.com/sdk\" target=\"_blank\">\n <img src=\"https://badgen.net/badge/Elgato/doc/blue\" alt=\"Elgato\">\n </a>\n</p>\n\n<p align=\"center\">\n <a href=\"https://github.com/gri-gus/streamdeck-python-sdk\" target=\"_blank\">\n <img src=\"https://img.shields.io/badge/github-%23121011.svg?style=for-the-badge&logo=github&logoColor=white\" alt=\"GitHub\">\n </a>\n</p>\n\n# streamdeck-python-sdk\n\nLibrary for creating Stream Deck plugins in Python.\n\n**Supported operating systems:**\n\n* MacOS: 10.14 or later\n* Windows: 10 or later\n\n**Supported Python versions:** 3.8 or later\n\n## Installation\n\n> \u26a0\ufe0f For correct operation on Windows, it is recommended to enable `LongPaths` support in\n> the system: [manual](https://www.backupery.com/how-to-enable-ntfs-long-paths-in-windows/).\n> Without this setting, problems with installation and use may occur!\n\n```shell\npip install \"streamdeck-sdk[dev]\"\n```\n\nDuring this installation, additional libraries needed for development are installed:\n\n* [streamdeck-sdk-pi](https://pypi.org/project/streamdeck-sdk-pi) - Property Inspector generator in Python\n\n* [streamdeck-sdk-cli](https://pypi.org/project/streamdeck-sdk-cli) - useful command line utilities\n\n> \u26a0\ufe0f These libraries should not be present in the plugin's `requirements.txt`.\n\n## Features\n\n* Ease of use. You can quickly create your own plugin without having to understand how websockets and\n other technologies work.\n* Fully typed, using [pydantic](https://github.com/pydantic/pydantic).\n* Includes image to base64 converters for easy installation of icons on keys.\n* Includes a decorator for functions and methods to run on a separate thread.\n* Exception logging and easy logging configuration.\n* Debug mode via `PyCharm` or other debugging tools.\n* A complete protocol for interaction with the Stream Deck application has been implemented.\n* Quick start of a project via the console command `streamdeck_sdk startproject`.\n* Build the project using the `streamdeck_sdk build` console command.\n* Property Inspector Generator. Write code in Python and get html and js for PI.\n\n## \u26a0\ufe0f Limitations\n\n1. During installation and update of the plugin, the Internet must be available.\n\n### Windows\n\n1. Plugin requirements should take no longer than 30 seconds to install. This is a feature of Stream Deck on Windows,\n since the program restarts the plugin if a websocket connection has not been established within 30 seconds.\n Therefore, you need a good Internet connection when installing and updating the plugin.\n\n## Examples\n\n[LoremFlickr](https://github.com/gri-gus/loremflickr-streamdeck-plugin) - Plugin for installing images on a button from\nthe LoremFlickr site. Supports MacOS and Windows.\n\n[Proxy Manager](https://github.com/gri-gus/proxymanager-streamdeck-plugin) - Plugin for enabling and disabling\nproxies on MacOS. Periodically polls the proxy status through a separate thread.\n\n[One-time password](https://github.com/gri-gus/otp-streamdeck-plugin) - Plugin for generating one-time passwords,\nlike in Google Authenticator. Has several Actions. Supports MacOS and Windows.\n\n---\n\nSee full description and usage examples on\n[GitHub](https://github.com/gri-gus/streamdeck-python-sdk)\n",
"bugtrack_url": null,
"license": null,
"summary": "Library for creating Stream Deck plugins in Python.",
"version": "1.2.1",
"project_urls": {
"Homepage": "https://github.com/gri-gus/streamdeck-python-sdk",
"Source": "https://github.com/gri-gus/streamdeck-python-sdk"
},
"split_keywords": [
"property inspector",
" property inspector generator",
" streamdeck property inspector generator",
" streamdeck property inspector",
" streamdeck pi",
" python",
" sdk",
" streamdeck",
" streamdeck-sdk",
" streamdeck_sdk",
" stream deck sdk",
" stream deck",
" elgato",
" elgato sdk",
" elgato stream deck",
" streamdeck-python-sdk",
" streamdeck_python_sdk",
" streamdeck python sdk"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "89c3e63d5005817ded92bf50252f921837b431a652223762aaf8ce82c8565b6e",
"md5": "93d5d4921d2883eaa5b0c838adb5cbe2",
"sha256": "cbfc416f1d8231b021bf9191000cc4269288c52a4ea0430ea97c7512414e9485"
},
"downloads": -1,
"filename": "streamdeck_sdk-1.2.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "93d5d4921d2883eaa5b0c838adb5cbe2",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 49411,
"upload_time": "2024-09-24T14:51:27",
"upload_time_iso_8601": "2024-09-24T14:51:27.818858Z",
"url": "https://files.pythonhosted.org/packages/89/c3/e63d5005817ded92bf50252f921837b431a652223762aaf8ce82c8565b6e/streamdeck_sdk-1.2.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d42845a6c41739dc280220fcb8f58d10b94a9ea81701e756a2f8757527ddd231",
"md5": "3dece1a5d3bec03d6d5b507afc4eefa9",
"sha256": "4bb97ec62206a70ce0d154ec8a30695b7462d41fb1032d0f51d3e986a72eef04"
},
"downloads": -1,
"filename": "streamdeck_sdk-1.2.1.tar.gz",
"has_sig": false,
"md5_digest": "3dece1a5d3bec03d6d5b507afc4eefa9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 32003,
"upload_time": "2024-09-24T14:51:29",
"upload_time_iso_8601": "2024-09-24T14:51:29.625203Z",
"url": "https://files.pythonhosted.org/packages/d4/28/45a6c41739dc280220fcb8f58d10b94a9ea81701e756a2f8757527ddd231/streamdeck_sdk-1.2.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-24 14:51:29",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "gri-gus",
"github_project": "streamdeck-python-sdk",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "streamdeck-sdk"
}