{"adoption": {"forks": 300, "observed_at": "2026-08-28T04:08:39.218707+00:00", "stars": 4215}, "canonical_url": "https://ross.abutalabs.com/products/findroid", "card": {"archived": false, "artifact_type": "application", "description": "Third-party native Jellyfin Android app", "domain": ["media", "self-hosted", "android-tools", "entertainment"], "enriched": true, "function": ["video-processing", "gui"], "health_score": 100, "homepage": null, "language": "Kotlin", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["jarnedemeulemeester/findroid"], "name": "jarnedemeulemeester/findroid", "platform": [], "pushed_at": "2026-08-26T10:30:15+00:00", "repo": "jarnedemeulemeester/findroid", "stars": 4215, "tags": ["jellyfin", "media-player", "native-app", "offline-playback", "exoplayer", "kotlin", "android", "mobile"], "topics": ["jellyfin", "android", "kotlin"], "urls": [], "use_cases": ["watch my Jellyfin movies and shows on Android with a native app", "download episodes from Jellyfin for offline viewing", "play media from my Jellyfin server without transcoding", "browse my Jellyfin library on my phone", "a better Android client for Jellyfin than the official app"], "what_it_is": "Findroid is a third-party native Android client for Jellyfin that lets users browse and play movies and series with a fully native interface. It supports direct play of many video, audio, and subtitle codecs via ExoPlayer, plus offline downloads.", "when_to_avoid": ["you need transcoding of unsupported formats on the server side", "you need an iOS or desktop client", "you need a fully mature, bug-free experience as the project is still in early stages"], "when_to_choose": ["you use Jellyfin and want a native, fast Android interface", "your media is directly playable on your device and you don't need transcoding", "you want offline downloads of your Jellyfin media"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/findroid", "repo": "jarnedemeulemeester/findroid", "role": "main", "score": 89}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:39.218707+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:22:26.982601+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "66d8a51aecfe9951348c4224ebf06a27559b66ba6c414bc2f5e0e709f8ab96db", "fetched_at": "2026-08-28T04:08:39.218707+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jarnedemeulemeester/findroid"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:39.218707+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:22:26.982601+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "66d8a51aecfe9951348c4224ebf06a27559b66ba6c414bc2f5e0e709f8ab96db", "fetched_at": "2026-08-28T04:08:39.218707+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jarnedemeulemeester/findroid"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:22:26.982601+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "66d8a51aecfe9951348c4224ebf06a27559b66ba6c414bc2f5e0e709f8ab96db", "fetched_at": "2026-08-28T04:08:39.218707+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jarnedemeulemeester/findroid"}], "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:08:39.218707+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:39.218707+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:39.218707+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:22:26.982601+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "66d8a51aecfe9951348c4224ebf06a27559b66ba6c414bc2f5e0e709f8ab96db", "fetched_at": "2026-08-28T04:08:39.218707+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jarnedemeulemeester/findroid"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:39.218707+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:39.218707+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:22:26.982601+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "66d8a51aecfe9951348c4224ebf06a27559b66ba6c414bc2f5e0e709f8ab96db", "fetched_at": "2026-08-28T04:08:39.218707+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jarnedemeulemeester/findroid"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:39.218707+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:39.218707+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:39.218707+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:22:26.982601+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "66d8a51aecfe9951348c4224ebf06a27559b66ba6c414bc2f5e0e709f8ab96db", "fetched_at": "2026-08-28T04:08:39.218707+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jarnedemeulemeester/findroid"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:39.218707+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:39.218707+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:22:26.982601+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "66d8a51aecfe9951348c4224ebf06a27559b66ba6c414bc2f5e0e709f8ab96db", "fetched_at": "2026-08-28T04:08:39.218707+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jarnedemeulemeester/findroid"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:22:26.982601+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "66d8a51aecfe9951348c4224ebf06a27559b66ba6c414bc2f5e0e709f8ab96db", "fetched_at": "2026-08-28T04:08:39.218707+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jarnedemeulemeester/findroid"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:22:26.982601+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "66d8a51aecfe9951348c4224ebf06a27559b66ba6c414bc2f5e0e709f8ab96db", "fetched_at": "2026-08-28T04:08:39.218707+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jarnedemeulemeester/findroid"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:22:26.982601+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "66d8a51aecfe9951348c4224ebf06a27559b66ba6c414bc2f5e0e709f8ab96db", "fetched_at": "2026-08-28T04:08:39.218707+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jarnedemeulemeester/findroid"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 69}, "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": 1922, "days_push": 7, "days_rel": 46, "gap_med": 99.0, "n_releases_24m": 5}, "score": 89, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}