{"adoption": {"forks": 177, "observed_at": "2026-08-28T04:05:04.196863+00:00", "stars": 1564}, "canonical_url": "https://ross.abutalabs.com/products/kaich-yuedu", "card": {"archived": false, "artifact_type": "application", "description": "阅读  -  iOS版本", "domain": ["mobile-development", "developer-tools", "media"], "enriched": true, "function": ["parser", "web-scraping"], "health_score": 20, "homepage": null, "language": null, "license": null, "license_family": "other", "maturity": "maintenance", "member_repos": ["kaich/Yuedu"], "name": "kaich/Yuedu", "platform": [], "pushed_at": "2021-07-20T02:32:51+00:00", "repo": "kaich/Yuedu", "stars": 1564, "tags": ["ebook-reader", "book-sources", "network-novels", "reading-app", "custom-source-parser", "chinese", "ios", "mobile"], "topics": [], "urls": [], "use_cases": ["read web novels on iPhone with custom sources", "parse online book content into a reader app", "import custom book source rules like the Android Legado app", "read network literature with a customizable reader", "use a reader app without built-in content servers"], "what_it_is": "Yuedu (源阅读) is an iOS e-book reader app that lets users define custom book sources to parse and read web novels and online content. It is the iOS counterpart of the Android 'Legado' reader, distributed via the App Store and TestFlight.", "when_to_avoid": ["you need an actively maintained project - the latest release dates to 2021", "you want a reader with built-in book content or servers", "you need an official app from the Android Legado developers"], "when_to_choose": ["you want an iOS reader compatible with Legado-style book source rules", "you read Chinese web novels and want a customizable source-based reader", "you prefer an App Store-distributed reader with no bundled content"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/kaich-yuedu", "repo": "kaich/Yuedu", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:04.196863+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:00:13.736969+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dbc1bc2b15672dbf0701d5d8b975a593c6911ed2c15385fcbd26735c8d78bfa2", "fetched_at": "2026-08-28T04:05:04.196863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kaich/Yuedu"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:04.196863+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:00:13.736969+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dbc1bc2b15672dbf0701d5d8b975a593c6911ed2c15385fcbd26735c8d78bfa2", "fetched_at": "2026-08-28T04:05:04.196863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kaich/Yuedu"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:00:13.736969+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dbc1bc2b15672dbf0701d5d8b975a593c6911ed2c15385fcbd26735c8d78bfa2", "fetched_at": "2026-08-28T04:05:04.196863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kaich/Yuedu"}], "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:04.196863+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:04.196863+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:04.196863+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:00:13.736969+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dbc1bc2b15672dbf0701d5d8b975a593c6911ed2c15385fcbd26735c8d78bfa2", "fetched_at": "2026-08-28T04:05:04.196863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kaich/Yuedu"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:04.196863+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:04.196863+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:00:13.736969+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dbc1bc2b15672dbf0701d5d8b975a593c6911ed2c15385fcbd26735c8d78bfa2", "fetched_at": "2026-08-28T04:05:04.196863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kaich/Yuedu"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:04.196863+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:04.196863+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:04.196863+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:00:13.736969+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dbc1bc2b15672dbf0701d5d8b975a593c6911ed2c15385fcbd26735c8d78bfa2", "fetched_at": "2026-08-28T04:05:04.196863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kaich/Yuedu"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:04.196863+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:04.196863+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:00:13.736969+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dbc1bc2b15672dbf0701d5d8b975a593c6911ed2c15385fcbd26735c8d78bfa2", "fetched_at": "2026-08-28T04:05:04.196863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kaich/Yuedu"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:00:13.736969+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dbc1bc2b15672dbf0701d5d8b975a593c6911ed2c15385fcbd26735c8d78bfa2", "fetched_at": "2026-08-28T04:05:04.196863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kaich/Yuedu"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:00:13.736969+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dbc1bc2b15672dbf0701d5d8b975a593c6911ed2c15385fcbd26735c8d78bfa2", "fetched_at": "2026-08-28T04:05:04.196863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kaich/Yuedu"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:00:13.736969+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "dbc1bc2b15672dbf0701d5d8b975a593c6911ed2c15385fcbd26735c8d78bfa2", "fetched_at": "2026-08-28T04:05:04.196863+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kaich/Yuedu"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:39:23.370411+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": 1984, "days_push": 1871, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}