{"adoption": {"forks": 450, "observed_at": "2026-08-28T04:08:36.425312+00:00", "stars": 4147}, "canonical_url": "https://ross.abutalabs.com/products/ytfzf", "card": {"archived": false, "artifact_type": "cli-tool", "description": "A posix script to find and watch youtube videos from the terminal. (Without API)", "domain": ["media", "developer-tools"], "enriched": true, "function": ["search-engine", "http-client", "cli"], "health_score": 25, "homepage": null, "language": "Shell", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "maintenance", "member_repos": ["pystardust/ytfzf"], "name": "pystardust/ytfzf", "platform": ["cli", "bsd"], "pushed_at": "2024-09-27T07:00:01+00:00", "repo": "pystardust/ytfzf", "stars": 4147, "tags": ["youtube", "posix-script", "fzf", "mpv", "video-player", "terminal-ui", "no-api", "yt-dlp", "dmenu", "command-line", "linux", "macos"], "topics": ["youtube", "cli", "terminal", "posix", "fzf", "dmenu", "ueberzug"], "urls": [], "use_cases": ["search and watch youtube videos from the terminal", "play youtube audio in mpv without a browser", "download youtube videos via yt-dlp from the command line", "browse youtube search results with fzf fuzzy selection", "show video thumbnails in the terminal while browsing", "script youtube searches without an api key"], "what_it_is": "ytfzf is a POSIX shell script that searches YouTube from the terminal without using the official API, letting users select videos via fzf or dmenu and play them with mpv or download them with yt-dlp. It supports thumbnail previews in the terminal and is configurable through shell configuration files.", "when_to_avoid": ["you need an actively maintained project - it is no longer actively developed", "you need a GUI or a full YouTube account experience (subscriptions, comments, uploads)", "you need Windows-native support", "you want features like channel management or playlist editing"], "when_to_choose": ["you want a lightweight, dependency-minimal terminal youtube client", "you prefer browsing videos with fzf/dmenu and playing in mpv", "you want to avoid the official YouTube API and its quotas", "you run a minimal Linux/BSD setup and like POSIX shell tools"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/ytfzf", "repo": "pystardust/ytfzf", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.425312+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:22:55.782900+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c9c24b7ddcb911e6d0e8747b8d5a37c710c7f39d896906e98ed9991f11b0389", "fetched_at": "2026-08-28T04:08:36.425312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pystardust/ytfzf"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.425312+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:22:55.782900+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c9c24b7ddcb911e6d0e8747b8d5a37c710c7f39d896906e98ed9991f11b0389", "fetched_at": "2026-08-28T04:08:36.425312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pystardust/ytfzf"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:22:55.782900+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c9c24b7ddcb911e6d0e8747b8d5a37c710c7f39d896906e98ed9991f11b0389", "fetched_at": "2026-08-28T04:08:36.425312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pystardust/ytfzf"}], "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:36.425312+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.425312+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.425312+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:22:55.782900+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c9c24b7ddcb911e6d0e8747b8d5a37c710c7f39d896906e98ed9991f11b0389", "fetched_at": "2026-08-28T04:08:36.425312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pystardust/ytfzf"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.425312+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.425312+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:22:55.782900+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c9c24b7ddcb911e6d0e8747b8d5a37c710c7f39d896906e98ed9991f11b0389", "fetched_at": "2026-08-28T04:08:36.425312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pystardust/ytfzf"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.425312+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.425312+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.425312+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:22:55.782900+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c9c24b7ddcb911e6d0e8747b8d5a37c710c7f39d896906e98ed9991f11b0389", "fetched_at": "2026-08-28T04:08:36.425312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pystardust/ytfzf"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.425312+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:36.425312+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:22:55.782900+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c9c24b7ddcb911e6d0e8747b8d5a37c710c7f39d896906e98ed9991f11b0389", "fetched_at": "2026-08-28T04:08:36.425312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pystardust/ytfzf"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:22:55.782900+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c9c24b7ddcb911e6d0e8747b8d5a37c710c7f39d896906e98ed9991f11b0389", "fetched_at": "2026-08-28T04:08:36.425312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pystardust/ytfzf"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:22:55.782900+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c9c24b7ddcb911e6d0e8747b8d5a37c710c7f39d896906e98ed9991f11b0389", "fetched_at": "2026-08-28T04:08:36.425312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pystardust/ytfzf"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:22:55.782900+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9c9c24b7ddcb911e6d0e8747b8d5a37c710c7f39d896906e98ed9991f11b0389", "fetched_at": "2026-08-28T04:08:36.425312+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pystardust/ytfzf"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2021, "days_push": 705, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 23, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}