{"id":18554940,"url":"https://github.com/gri-gus/loremflickr-streamdeck-plugin","last_synced_at":"2025-04-09T23:31:55.312Z","repository":{"id":143639482,"uuid":"616439685","full_name":"gri-gus/loremflickr-streamdeck-plugin","owner":"gri-gus","description":"Stream Deck Plugin for installing images from LoremFlickr to keys.","archived":false,"fork":false,"pushed_at":"2024-09-24T15:26:01.000Z","size":601,"stargazers_count":6,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-24T13:43:54.872Z","etag":null,"topics":["loremflickr","python","stream-deck-plugin","streamdeck","streamdeck-plugin","streamdeck-plugins","streamdeck-python-sdk","streamdeckplugin"],"latest_commit_sha":null,"homepage":"","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gri-gus.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-03-20T11:51:15.000Z","updated_at":"2024-09-24T15:26:05.000Z","dependencies_parsed_at":"2024-11-06T21:39:55.384Z","dependency_job_id":null,"html_url":"https://github.com/gri-gus/loremflickr-streamdeck-plugin","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gri-gus%2Floremflickr-streamdeck-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gri-gus%2Floremflickr-streamdeck-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gri-gus%2Floremflickr-streamdeck-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gri-gus%2Floremflickr-streamdeck-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gri-gus","download_url":"https://codeload.github.com/gri-gus/loremflickr-streamdeck-plugin/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248129881,"owners_count":21052655,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["loremflickr","python","stream-deck-plugin","streamdeck","streamdeck-plugin","streamdeck-plugins","streamdeck-python-sdk","streamdeckplugin"],"created_at":"2024-11-06T21:24:30.312Z","updated_at":"2025-04-09T23:31:53.671Z","avatar_url":"https://github.com/gri-gus.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n    \u003ca\u003e\n        \u003cimg src=\"https://raw.githubusercontent.com/gri-gus/loremflickr-streamdeck-plugin/main/assets/images/cover.png\" \n        alt=\"loremflickr-streamdeck-plugin\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://loremflickr.com/\" target=\"_blank\"\u003e\n        \u003cimg src=\"https://img.shields.io/website?down_color=FF3E87\u0026down_message=offline\u0026label=LoremFlickr website\u0026up_color=004DDD\u0026up_message=online\u0026url=https%3A%2F%2Floremflickr.com%2F\" \n         alt=\"LoremFlickr website\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n# loremflickr-streamdeck-plugin\n\nStream Deck Plugin for installing images from LoremFlickr to button.\n\n**LoremFlickr official website:** https://loremflickr.com/\n\n**Property Inspector\npreview:** [click](https://htmlpreview.github.io/?https://github.com/gri-gus/loremflickr-streamdeck-plugin/blob/main/com.ggusev.loremflickr.sdPlugin/property_inspector/setkeyimage_pi.html)\n\n\n## Requirements\n\n**Operating systems:**\n\n* MacOS: 10.14 or later\n* Windows: 10 or later\n\n**Stream Deck application:** 6.0, 6.1, 6.2, 6.3, 6.4, 6.5, 6.6, 6.7\n\n**Python:** 3.8 or later\n\n## Installation\n\n### Python\n\n\u003e If you have difficulty, then look at articles or videos on the Internet about it.\n\n1. Download Python from the official website and install it: https://www.python.org/downloads/\n\n   \u003e ⚠️ Python version must be 3.8.0 or later.\n\n\n2. Check that Python is available from the command line:\n\n   \u003cdetails\u003e\u003csummary\u003eMacOS\u003c/summary\u003e\n\n   Open the `Terminal` application, enter the command below and press Return(Enter):\n\n   ```shell\n   python3 -V\n   ```\n\n   If you get a response that looks like `Python 3.10.4`, then you have done everything right.\n\n   If there is no response, then you have installed Python incorrectly.\n\n   \u003c/details\u003e\n\n   \u003cdetails\u003e\u003csummary\u003eWindows\u003c/summary\u003e\n\n   Open the `Command Prompt` application, enter the command below and press Return(Enter):\n\n   ```shell\n   python -V\n   ```\n\n   If you get a response that looks like `Python 3.10.4`, then you have done everything right.\n\n   If there is no response, then you have installed Python incorrectly.\n\n   \u003c/details\u003e\n\n3. Restart your computer.\n\n### Stream Deck\n\nDownload the Stream Deck app from the official website and install it: https://www.elgato.com/en/downloads\n\n### LoremFlickr Stream Deck Plugin\n\n\u003e ⚠️ During the installation of the plugin, you must have internet access.\n\n\u003e Errors may occur during installation. If they are, then a message about it will appear on the screen.\n\nLatest release: https://github.com/gri-gus/loremflickr-streamdeck-plugin/releases\n\nYou need to download a file called `com.ggusev.loremflickr.streamDeckPlugin`. Once downloaded, double-click on it. The\nStream Deck application prompts you to install the plugin.\n\nAfter installation, you will have a `LoremFlickr` category and actions:\n\n\u003cimg width=\"295\" height=\"100\" src=\"https://raw.githubusercontent.com/gri-gus/loremflickr-streamdeck-plugin/main/assets/images/category.png\" alt=\"category\"\u003e\n\n## Usage\n\n\u003e ⚠️ The button may not start working immediately after installing the plugin, but after about 40 seconds. At this time,\n\u003e dependencies are installed. If you do not receive an error message on the screen, but an exclamation mark is displayed\n\u003e when you click on the button, then the plugin is not fully installed yet, and you need to wait. This only happens\n\u003e after installing the plugin. There is no need to wait for the next use.\n\nDrag the `Set key image` action from `LoremFlickr` category to the desired button.\n\nClick on the button, and you will see the Property Inspector where you can adjust some settings. See the `Manual`\nsection\nin the Property Inspector for more details.\n\n\u003cimg width=\"433\" height=\"260\" src=\"https://raw.githubusercontent.com/gri-gus/loremflickr-streamdeck-plugin/main/assets/images/setkeyimage_pi.png\" alt=\"setkeyimage_pi\"\u003e\n\nEach time you press the button on the Stream Deck, the picture will be updated.\n\n## How does it work internally?\n\nStream Deck does not have the ability to run Python files, but it does have the ability to run `.bat` and `.sh` files.\n\nBut it all starts with the `manifest.json` file, which contains `\"CodePathMac\": \"run.sh\"` and `\"CodePathWin\": \"run.bat\"`\n. These are scripts that are run depending on the system.\n\nFiles `run.sh` for MacOS or `run.bat` for Windows: startup scripts, entry points. They set environment variables, check\nwhether Python is installed (if not, an error window pops up), and run the `init.py` script. Based on the result\nfrom `init.py`, if everything is fine, then the `main.py` file is launched and the plugin is launched, and if not, then\nan error window pops up. This happens every time you restart the Stream Deck application and when you reinstall/update\nthe plugin.\n\nWhat is the `init.py` file? This is a script that is responsible for the virtual environment and dependencies. Why can't\nwe immediately add `venv` to the built version of the plugin? Because a user with a system/hardware different from the\none on which `venv` was made may encounter compatibility problems. Therefore, for Python, everyone should have their own\nvirtual environment for each project. The `init.py` file is responsible for creating the virtual environment, installing\ndependencies from `requirements.txt`, and checking that everything is installed correctly. It also runs every time you\nrestart the Stream Deck application and when you reinstall/update the plugin. But if the virtual environment has already\nbeen created and the dependencies are installed, then `init.py` simply checks that everything is installed correctly.\n\nLater, the `main.py` file comes into play, which contains the plugin logic.\n\n## Dependencies\n\n[streamdeck-python-sdk](https://github.com/gri-gus/streamdeck-python-sdk)\n\n[streamdeck-python-sdk-pi](https://github.com/gri-gus/streamdeck-python-sdk-pi)\n\n[streamdeck-javascript-sdk](https://github.com/elgatosf/streamdeck-javascript-sdk)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgri-gus%2Floremflickr-streamdeck-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgri-gus%2Floremflickr-streamdeck-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgri-gus%2Floremflickr-streamdeck-plugin/lists"}