{"adoption": {"forks": 450, "observed_at": "2026-08-28T04:05:09.612891+00:00", "stars": 1601}, "canonical_url": "https://ross.abutalabs.com/products/ounews", "card": {"archived": false, "artifact_type": "application", "description": "新闻阅读", "domain": ["mobile-development", "media", "android-tools", "developer-tools"], "enriched": true, "function": ["http-client", "caching", "data-visualization"], "health_score": 20, "homepage": null, "language": "Java", "license": null, "license_family": "other", "maturity": "abandoned", "member_repos": ["oubowu/OuNews"], "name": "oubowu/OuNews", "platform": [], "pushed_at": "2017-08-01T03:24:06+00:00", "repo": "oubowu/OuNews", "stars": 1601, "tags": ["news-reader", "mvp-architecture", "rxjava", "retrofit", "okhttp", "learning-project", "night-mode", "video-player", "chinese", "android", "mobile"], "topics": ["news"], "urls": [], "use_cases": ["read news on android", "browse news photos and videos in one app", "learn mvp pattern android example", "study retrofit okhttp offline caching implementation", "example of rxjava with retrofit in android app", "android app with night mode and swipe gestures"], "what_it_is": "OuNews is an Android news reading client built in Java with news, picture, and video modules. It was written as a learning project demonstrating MVP architecture with RxJava, Retrofit, OkHttp caching, and other popular Android libraries.", "when_to_avoid": ["you need a maintained production news app - last release was 2017 and the news API it depends on may be dead", "you need a permissively licensed codebase - no license is specified", "you need iOS or desktop support"], "when_to_choose": ["you want a reference implementation of MVP + RxJava + Retrofit on Android", "you need an example of network caching with Retrofit and OkHttp", "you are studying Chinese open-source Android learning projects"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/ounews", "repo": "oubowu/OuNews", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.612891+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:52:48.813732+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "28b4eae1f57595f075f3b6b5d09205836b6bbedf6fb6dbababedcf9dec94ffc9", "fetched_at": "2026-08-28T04:05:09.612891+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oubowu/OuNews"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.612891+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:52:48.813732+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "28b4eae1f57595f075f3b6b5d09205836b6bbedf6fb6dbababedcf9dec94ffc9", "fetched_at": "2026-08-28T04:05:09.612891+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oubowu/OuNews"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:52:48.813732+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "28b4eae1f57595f075f3b6b5d09205836b6bbedf6fb6dbababedcf9dec94ffc9", "fetched_at": "2026-08-28T04:05:09.612891+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oubowu/OuNews"}], "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:09.612891+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.612891+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.612891+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:52:48.813732+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "28b4eae1f57595f075f3b6b5d09205836b6bbedf6fb6dbababedcf9dec94ffc9", "fetched_at": "2026-08-28T04:05:09.612891+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oubowu/OuNews"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.612891+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.612891+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:52:48.813732+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "28b4eae1f57595f075f3b6b5d09205836b6bbedf6fb6dbababedcf9dec94ffc9", "fetched_at": "2026-08-28T04:05:09.612891+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oubowu/OuNews"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.612891+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.612891+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.612891+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:52:48.813732+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "28b4eae1f57595f075f3b6b5d09205836b6bbedf6fb6dbababedcf9dec94ffc9", "fetched_at": "2026-08-28T04:05:09.612891+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oubowu/OuNews"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.612891+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.612891+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:52:48.813732+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "28b4eae1f57595f075f3b6b5d09205836b6bbedf6fb6dbababedcf9dec94ffc9", "fetched_at": "2026-08-28T04:05:09.612891+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oubowu/OuNews"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:52:48.813732+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "28b4eae1f57595f075f3b6b5d09205836b6bbedf6fb6dbababedcf9dec94ffc9", "fetched_at": "2026-08-28T04:05:09.612891+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oubowu/OuNews"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:52:48.813732+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "28b4eae1f57595f075f3b6b5d09205836b6bbedf6fb6dbababedcf9dec94ffc9", "fetched_at": "2026-08-28T04:05:09.612891+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oubowu/OuNews"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:52:48.813732+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "28b4eae1f57595f075f3b6b5d09205836b6bbedf6fb6dbababedcf9dec94ffc9", "fetched_at": "2026-08-28T04:05:09.612891+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oubowu/OuNews"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+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": 3838, "days_push": 3319, "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}}