{"adoption": {"forks": 156, "observed_at": "2026-08-28T04:06:11.467326+00:00", "stars": 2081}, "canonical_url": "https://ross.abutalabs.com/products/opendeck", "card": {"archived": false, "artifact_type": "application", "description": "Linux software for the Stream Deck with support for original Elgato Stream Deck plugins", "domain": ["desktop-applications", "developer-tools", "cross-platform"], "enriched": true, "function": ["gui", "plugin-system", "workflow-automation", "developer-tools"], "health_score": 97, "homepage": "https://discord.gg/26Nf8rHvaj", "language": "Rust", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["nekename/OpenDeck"], "name": "nekename/OpenDeck", "platform": ["windows", "cross-platform"], "pushed_at": "2026-07-29T22:14:49+00:00", "repo": "nekename/OpenDeck", "stars": 2081, "tags": ["stream-deck", "elgato", "streamdeck-plugins", "openaction", "rust", "tauri", "hardware-controller", "macro-keys", "automation", "linux", "macos", "desktop"], "topics": ["elgato", "linux", "streamdeck", "cross-platform", "openaction"], "urls": [], "use_cases": ["control an Elgato Stream Deck on Linux", "use existing Elgato Stream Deck plugins on Linux or macOS", "run Windows-only Stream Deck plugins via Wine", "switch Stream Deck profiles automatically when changing apps", "turn a smartphone into a stream deck with Tacto", "map multi-actions and toggles to Stream Deck buttons"], "what_it_is": "OpenDeck is a cross-platform desktop application for controlling Elgato Stream Deck devices, built in Rust with Tauri. It supports original Elgato Stream Deck SDK plugins as well as the OpenAction plugin API, with Linux as its primary target.", "when_to_avoid": ["you only need basic key mapping and prefer a simpler tool like streamdeck-ui", "you use non-Elgato stream controller hardware without a vendor plugin", "you need first-party Elgato support or official vendor support channels"], "when_to_choose": ["you use a Stream Deck on Linux where Elgato's official software is unavailable", "you want compatibility with the broad ecosystem of original Stream Deck SDK plugins", "you want an open-source, cross-platform alternative to Elgato's software", "you want portable profiles that work across Linux, Windows, and macOS"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/opendeck", "repo": "nekename/OpenDeck", "role": "main", "score": 96}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:11.467326+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:56:00.982657+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0242a13f300c7c7ce8e4ede1f456db9d348ebb125a8bc050b621b6c2ebbe12cb", "fetched_at": "2026-08-28T04:06:11.467326+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nekename/OpenDeck"}, {"content_hash": "f3c0e52bc23ec6a73e6a7df6db784724fd536eb47e04f69e06f7b75efc3f4df3", "fetched_at": "2026-08-29T10:36:00.426706+00:00", "kind": "homepage", "missing": false, "url": "https://discord.gg/26Nf8rHvaj"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:11.467326+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:56:00.982657+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0242a13f300c7c7ce8e4ede1f456db9d348ebb125a8bc050b621b6c2ebbe12cb", "fetched_at": "2026-08-28T04:06:11.467326+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nekename/OpenDeck"}, {"content_hash": "f3c0e52bc23ec6a73e6a7df6db784724fd536eb47e04f69e06f7b75efc3f4df3", "fetched_at": "2026-08-29T10:36:00.426706+00:00", "kind": "homepage", "missing": false, "url": "https://discord.gg/26Nf8rHvaj"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:56:00.982657+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0242a13f300c7c7ce8e4ede1f456db9d348ebb125a8bc050b621b6c2ebbe12cb", "fetched_at": "2026-08-28T04:06:11.467326+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nekename/OpenDeck"}, {"content_hash": "f3c0e52bc23ec6a73e6a7df6db784724fd536eb47e04f69e06f7b75efc3f4df3", "fetched_at": "2026-08-29T10:36:00.426706+00:00", "kind": "homepage", "missing": false, "url": "https://discord.gg/26Nf8rHvaj"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:06:11.467326+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:11.467326+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:11.467326+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:56:00.982657+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0242a13f300c7c7ce8e4ede1f456db9d348ebb125a8bc050b621b6c2ebbe12cb", "fetched_at": "2026-08-28T04:06:11.467326+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nekename/OpenDeck"}, {"content_hash": "f3c0e52bc23ec6a73e6a7df6db784724fd536eb47e04f69e06f7b75efc3f4df3", "fetched_at": "2026-08-29T10:36:00.426706+00:00", "kind": "homepage", "missing": false, "url": "https://discord.gg/26Nf8rHvaj"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:11.467326+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:11.467326+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:56:00.982657+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0242a13f300c7c7ce8e4ede1f456db9d348ebb125a8bc050b621b6c2ebbe12cb", "fetched_at": "2026-08-28T04:06:11.467326+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nekename/OpenDeck"}, {"content_hash": "f3c0e52bc23ec6a73e6a7df6db784724fd536eb47e04f69e06f7b75efc3f4df3", "fetched_at": "2026-08-29T10:36:00.426706+00:00", "kind": "homepage", "missing": false, "url": "https://discord.gg/26Nf8rHvaj"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:11.467326+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:11.467326+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:11.467326+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:56:00.982657+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0242a13f300c7c7ce8e4ede1f456db9d348ebb125a8bc050b621b6c2ebbe12cb", "fetched_at": "2026-08-28T04:06:11.467326+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nekename/OpenDeck"}, {"content_hash": "f3c0e52bc23ec6a73e6a7df6db784724fd536eb47e04f69e06f7b75efc3f4df3", "fetched_at": "2026-08-29T10:36:00.426706+00:00", "kind": "homepage", "missing": false, "url": "https://discord.gg/26Nf8rHvaj"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:11.467326+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:11.467326+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:56:00.982657+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0242a13f300c7c7ce8e4ede1f456db9d348ebb125a8bc050b621b6c2ebbe12cb", "fetched_at": "2026-08-28T04:06:11.467326+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nekename/OpenDeck"}, {"content_hash": "f3c0e52bc23ec6a73e6a7df6db784724fd536eb47e04f69e06f7b75efc3f4df3", "fetched_at": "2026-08-29T10:36:00.426706+00:00", "kind": "homepage", "missing": false, "url": "https://discord.gg/26Nf8rHvaj"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:56:00.982657+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0242a13f300c7c7ce8e4ede1f456db9d348ebb125a8bc050b621b6c2ebbe12cb", "fetched_at": "2026-08-28T04:06:11.467326+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nekename/OpenDeck"}, {"content_hash": "f3c0e52bc23ec6a73e6a7df6db784724fd536eb47e04f69e06f7b75efc3f4df3", "fetched_at": "2026-08-29T10:36:00.426706+00:00", "kind": "homepage", "missing": false, "url": "https://discord.gg/26Nf8rHvaj"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:56:00.982657+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0242a13f300c7c7ce8e4ede1f456db9d348ebb125a8bc050b621b6c2ebbe12cb", "fetched_at": "2026-08-28T04:06:11.467326+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nekename/OpenDeck"}, {"content_hash": "f3c0e52bc23ec6a73e6a7df6db784724fd536eb47e04f69e06f7b75efc3f4df3", "fetched_at": "2026-08-29T10:36:00.426706+00:00", "kind": "homepage", "missing": false, "url": "https://discord.gg/26Nf8rHvaj"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:56:00.982657+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0242a13f300c7c7ce8e4ede1f456db9d348ebb125a8bc050b621b6c2ebbe12cb", "fetched_at": "2026-08-28T04:06:11.467326+00:00", "kind": "readme", "missing": false, "url": "https://github.com/nekename/OpenDeck"}, {"content_hash": "f3c0e52bc23ec6a73e6a7df6db784724fd536eb47e04f69e06f7b75efc3f4df3", "fetched_at": "2026-08-29T10:36:00.426706+00:00", "kind": "homepage", "missing": false, "url": "https://discord.gg/26Nf8rHvaj"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 95, "longevity": 100, "rhythm": 95}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1439, "days_push": 35, "days_rel": 35, "gap_med": 21, "n_releases_24m": 32}, "score": 96, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}