{"adoption": {"forks": 219, "observed_at": "2026-08-28T04:08:20.683768+00:00", "stars": 3811}, "canonical_url": "https://ross.abutalabs.com/products/yidarule", "card": {"archived": true, "artifact_type": "dataset", "description": "益达规则仓库", "domain": ["media", "entertainment", "crawlers", "cross-platform"], "enriched": true, "function": ["web-scraping", "parser", "video-processing", "audio-processing"], "health_score": 10, "homepage": null, "language": null, "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["xiaohucode/yidaRule"], "name": "xiaohucode/yidaRule", "platform": ["windows", "cross-platform"], "pushed_at": "2026-06-12T17:30:20+00:00", "repo": "xiaohucode/yidaRule", "stars": 3811, "tags": ["site-rules", "media-aggregator", "flutter-rust", "magnet-links", "rule-repository", "chinese", "android", "flutter"], "topics": [], "urls": [], "use_cases": ["import site rules to stream video from third-party sites", "listen to audiobooks and FM radio through the yida app", "read web novels and comics in one app", "resolve and stream magnet links", "write custom .yds site rules for new sources"], "what_it_is": "A community rule repository ('Yida Rules') for the Yida app, a cross-platform Flutter + Rust media aggregator that plays video, audio, reads text, and browses comics via importable site rules (.yds files). The repo hosts rule definitions for various video, audiobook, FM, and comic sites plus documentation on writing rules.", "when_to_avoid": ["you want a standalone media player without rule-based sources", "you need a legally licensed streaming service", "you are not using the Yida app, since the rules are app-specific"], "when_to_choose": ["you already use the Yida app and want new content source rules", "you want a rule-driven cross-platform media aggregator", "you need the official rule documentation and latest rule updates"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/yidarule", "repo": "xiaohucode/yidaRule", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:20.683768+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:26:37.638213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "485eeae449426bf1654288d78bd735dcbd6305bf6f9e146b52392e8d39714eac", "fetched_at": "2026-08-28T04:08:20.683768+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xiaohucode/yidaRule"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:20.683768+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:26:37.638213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "485eeae449426bf1654288d78bd735dcbd6305bf6f9e146b52392e8d39714eac", "fetched_at": "2026-08-28T04:08:20.683768+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xiaohucode/yidaRule"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:26:37.638213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "485eeae449426bf1654288d78bd735dcbd6305bf6f9e146b52392e8d39714eac", "fetched_at": "2026-08-28T04:08:20.683768+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xiaohucode/yidaRule"}], "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:20.683768+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:20.683768+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:20.683768+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:26:37.638213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "485eeae449426bf1654288d78bd735dcbd6305bf6f9e146b52392e8d39714eac", "fetched_at": "2026-08-28T04:08:20.683768+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xiaohucode/yidaRule"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:20.683768+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:20.683768+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:26:37.638213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "485eeae449426bf1654288d78bd735dcbd6305bf6f9e146b52392e8d39714eac", "fetched_at": "2026-08-28T04:08:20.683768+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xiaohucode/yidaRule"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:20.683768+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:20.683768+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:20.683768+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:26:37.638213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "485eeae449426bf1654288d78bd735dcbd6305bf6f9e146b52392e8d39714eac", "fetched_at": "2026-08-28T04:08:20.683768+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xiaohucode/yidaRule"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:20.683768+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:20.683768+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:26:37.638213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "485eeae449426bf1654288d78bd735dcbd6305bf6f9e146b52392e8d39714eac", "fetched_at": "2026-08-28T04:08:20.683768+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xiaohucode/yidaRule"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:26:37.638213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "485eeae449426bf1654288d78bd735dcbd6305bf6f9e146b52392e8d39714eac", "fetched_at": "2026-08-28T04:08:20.683768+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xiaohucode/yidaRule"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:26:37.638213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "485eeae449426bf1654288d78bd735dcbd6305bf6f9e146b52392e8d39714eac", "fetched_at": "2026-08-28T04:08:20.683768+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xiaohucode/yidaRule"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:26:37.638213+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "485eeae449426bf1654288d78bd735dcbd6305bf6f9e146b52392e8d39714eac", "fetched_at": "2026-08-28T04:08:20.683768+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xiaohucode/yidaRule"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 87, "longevity": 87, "rhythm": 88}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["archived"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1221, "days_push": 82, "days_rel": 82, "gap_med": 5, "n_releases_24m": 12}, "score": 10, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}