{"adoption": {"forks": 293, "observed_at": "2026-08-28T04:05:55.384795+00:00", "stars": 1923}, "canonical_url": "https://ross.abutalabs.com/products/jbops", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Just a Bunch Of Plex Scripts", "domain": ["media", "self-hosted", "developer-tools"], "enriched": true, "function": ["developer-tools", "workflow-automation", "analytics", "data-visualization"], "health_score": 50, "homepage": null, "language": "Python", "license": null, "license_family": "other", "maturity": "active", "member_repos": ["blacktwin/JBOPS"], "name": "blacktwin/JBOPS", "platform": ["python", "cli", "self-hosted"], "pushed_at": "2025-11-05T05:30:40+00:00", "repo": "blacktwin/JBOPS", "stars": 1923, "tags": ["plex", "tautulli", "plexapi", "media-server", "scripts", "streaming", "automation"], "topics": ["hacktoberfest"], "urls": [], "use_cases": ["automate plex media server tasks", "map plex stream locations from tautulli data", "send custom notifications when plex streams start", "manage plex libraries with python scripts", "kick or limit plex stream sessions", "generate reports on plex server activity"], "what_it_is": "A collection of Python utility scripts for managing and automating Plex Media Server tasks, built on Tautulli, python-plexapi, and requests. Scripts cover things like mapping client connections, notifications, and media library management.", "when_to_avoid": ["you use a media server other than Plex", "you need a polished supported application rather than a grab-bag of scripts", "you need a project with a formal license for redistribution"], "when_to_choose": ["you run a Plex Media Server and want to automate or extend it", "you already use Tautulli and want custom scripts on top of its data", "you want ready-made Python examples using python-plexapi"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/jbops", "repo": "blacktwin/JBOPS", "role": "main", "score": 55}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:55.384795+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:09:37.910418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c1fe75c8d879a3140ee4b4ef0547dd5949cda9bb45773f1b40c75c94f1f2ef0f", "fetched_at": "2026-08-28T04:05:55.384795+00:00", "kind": "readme", "missing": false, "url": "https://github.com/blacktwin/JBOPS"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:55.384795+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:09:37.910418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c1fe75c8d879a3140ee4b4ef0547dd5949cda9bb45773f1b40c75c94f1f2ef0f", "fetched_at": "2026-08-28T04:05:55.384795+00:00", "kind": "readme", "missing": false, "url": "https://github.com/blacktwin/JBOPS"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:09:37.910418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c1fe75c8d879a3140ee4b4ef0547dd5949cda9bb45773f1b40c75c94f1f2ef0f", "fetched_at": "2026-08-28T04:05:55.384795+00:00", "kind": "readme", "missing": false, "url": "https://github.com/blacktwin/JBOPS"}], "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:05:55.384795+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:55.384795+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:55.384795+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:09:37.910418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c1fe75c8d879a3140ee4b4ef0547dd5949cda9bb45773f1b40c75c94f1f2ef0f", "fetched_at": "2026-08-28T04:05:55.384795+00:00", "kind": "readme", "missing": false, "url": "https://github.com/blacktwin/JBOPS"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:55.384795+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:55.384795+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:09:37.910418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c1fe75c8d879a3140ee4b4ef0547dd5949cda9bb45773f1b40c75c94f1f2ef0f", "fetched_at": "2026-08-28T04:05:55.384795+00:00", "kind": "readme", "missing": false, "url": "https://github.com/blacktwin/JBOPS"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:55.384795+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:55.384795+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:55.384795+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:09:37.910418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c1fe75c8d879a3140ee4b4ef0547dd5949cda9bb45773f1b40c75c94f1f2ef0f", "fetched_at": "2026-08-28T04:05:55.384795+00:00", "kind": "readme", "missing": false, "url": "https://github.com/blacktwin/JBOPS"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:55.384795+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:55.384795+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:09:37.910418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c1fe75c8d879a3140ee4b4ef0547dd5949cda9bb45773f1b40c75c94f1f2ef0f", "fetched_at": "2026-08-28T04:05:55.384795+00:00", "kind": "readme", "missing": false, "url": "https://github.com/blacktwin/JBOPS"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:09:37.910418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c1fe75c8d879a3140ee4b4ef0547dd5949cda9bb45773f1b40c75c94f1f2ef0f", "fetched_at": "2026-08-28T04:05:55.384795+00:00", "kind": "readme", "missing": false, "url": "https://github.com/blacktwin/JBOPS"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:09:37.910418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c1fe75c8d879a3140ee4b4ef0547dd5949cda9bb45773f1b40c75c94f1f2ef0f", "fetched_at": "2026-08-28T04:05:55.384795+00:00", "kind": "readme", "missing": false, "url": "https://github.com/blacktwin/JBOPS"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:09:37.910418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c1fe75c8d879a3140ee4b4ef0547dd5949cda9bb45773f1b40c75c94f1f2ef0f", "fetched_at": "2026-08-28T04:05:55.384795+00:00", "kind": "readme", "missing": false, "url": "https://github.com/blacktwin/JBOPS"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 50, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3641, "days_push": 301, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 55, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}