{"adoption": {"forks": 13644, "observed_at": "2026-08-28T04:12:24.375185+00:00", "stars": 148333}, "canonical_url": "https://ross.abutalabs.com/products/scrcpy", "card": {"archived": false, "artifact_type": "application", "description": "Display and control your Android device", "domain": ["android-tools", "cross-platform", "developer-tools", "media"], "enriched": true, "function": ["video-processing", "audio-processing", "gui"], "health_score": 99, "homepage": null, "language": "C", "license": "Apache-2.0", "license_family": "permissive", "maturity": "stable", "member_repos": ["Genymobile/scrcpy"], "name": "Genymobile/scrcpy", "platform": ["windows", "cli", "cross-platform"], "pushed_at": "2026-08-17T10:27:07+00:00", "repo": "Genymobile/scrcpy", "stars": 148333, "tags": ["screen-mirroring", "android", "adb", "screen-recording", "sdl2", "ffmpeg", "usb", "remote-control", "linux", "macos"], "topics": ["android", "c", "sdl2", "libav", "ffmpeg", "screen", "mirroring", "recording"], "urls": [], "use_cases": ["mirror my android phone screen on my pc", "control android device with keyboard and mouse", "record android screen from computer", "use phone apps on desktop without emulator", "wirelessly display android screen over wifi", "use android phone as webcam on linux", "test android app on real device from desktop"], "what_it_is": "scrcpy is a lightweight open-source application that mirrors and controls Android devices (video and audio) over USB or TCP/IP from a computer, without root or any app installed on the device. It offers low-latency display, keyboard/mouse/gamepad input, recording, camera mirroring, and copy-paste support.", "when_to_avoid": ["you need to mirror iOS or other non-Android devices", "you want a graphical setup wizard with no command-line options", "your device runs Android below 5.0 or lacks USB debugging capability"], "when_to_choose": ["you need low-latency, high-quality Android screen mirroring without installing anything on the device", "you want to control an Android device from your computer's keyboard and mouse", "you need to record Android screen or mirror the camera without root access"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/scrcpy", "repo": "Genymobile/scrcpy", "role": "main", "score": 92}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:12:24.375185+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T16:11:00.374743+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e937f238bf829444f24276717d12d6bd42de77ab648b5f5eafde8cbce7bd0edb", "fetched_at": "2026-08-28T04:12:24.375185+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Genymobile/scrcpy"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:12:24.375185+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T16:11:00.374743+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e937f238bf829444f24276717d12d6bd42de77ab648b5f5eafde8cbce7bd0edb", "fetched_at": "2026-08-28T04:12:24.375185+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Genymobile/scrcpy"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T16:11:00.374743+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e937f238bf829444f24276717d12d6bd42de77ab648b5f5eafde8cbce7bd0edb", "fetched_at": "2026-08-28T04:12:24.375185+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Genymobile/scrcpy"}], "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:12:24.375185+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:12:24.375185+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:12:24.375185+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T16:11:00.374743+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e937f238bf829444f24276717d12d6bd42de77ab648b5f5eafde8cbce7bd0edb", "fetched_at": "2026-08-28T04:12:24.375185+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Genymobile/scrcpy"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:12:24.375185+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:12:24.375185+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T16:11:00.374743+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e937f238bf829444f24276717d12d6bd42de77ab648b5f5eafde8cbce7bd0edb", "fetched_at": "2026-08-28T04:12:24.375185+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Genymobile/scrcpy"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:12:24.375185+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:12:24.375185+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:12:24.375185+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T16:11:00.374743+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e937f238bf829444f24276717d12d6bd42de77ab648b5f5eafde8cbce7bd0edb", "fetched_at": "2026-08-28T04:12:24.375185+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Genymobile/scrcpy"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:12:24.375185+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:12:24.375185+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T16:11:00.374743+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e937f238bf829444f24276717d12d6bd42de77ab648b5f5eafde8cbce7bd0edb", "fetched_at": "2026-08-28T04:12:24.375185+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Genymobile/scrcpy"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T16:11:00.374743+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e937f238bf829444f24276717d12d6bd42de77ab648b5f5eafde8cbce7bd0edb", "fetched_at": "2026-08-28T04:12:24.375185+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Genymobile/scrcpy"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T16:11:00.374743+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e937f238bf829444f24276717d12d6bd42de77ab648b5f5eafde8cbce7bd0edb", "fetched_at": "2026-08-28T04:12:24.375185+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Genymobile/scrcpy"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T16:11:00.374743+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e937f238bf829444f24276717d12d6bd42de77ab648b5f5eafde8cbce7bd0edb", "fetched_at": "2026-08-28T04:12:24.375185+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Genymobile/scrcpy"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 98, "longevity": 100, "rhythm": 80}, "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": 3207, "days_push": 16, "days_rel": 52, "gap_med": 64.5, "n_releases_24m": 13}, "score": 92, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}