{"adoption": {"forks": 446, "observed_at": "2026-08-28T04:06:31.036844+00:00", "stars": 2252}, "canonical_url": "https://ross.abutalabs.com/products/coolweatherjetpack", "card": {"archived": false, "artifact_type": "application", "description": "酷欧天气的Jetpack版本实现，采用了MVVM架构。", "domain": ["android-tools", "weather", "mobile-development", "tutorials"], "enriched": true, "function": ["mobile-framework", "state-management", "http-client", "caching"], "health_score": 20, "homepage": null, "language": "Kotlin", "license": "Apache-2.0", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["guolindev/coolweatherjetpack"], "name": "guolindev/coolweatherjetpack", "platform": ["jvm"], "pushed_at": "2023-09-05T08:39:15+00:00", "repo": "guolindev/coolweatherjetpack", "stars": 2252, "tags": ["jetpack", "mvvm", "kotlin", "weather-app", "learning-project", "retrofit", "viewmodel", "repository-pattern", "android"], "topics": [], "urls": [], "use_cases": ["learn android jetpack mvvm architecture", "study a sample weather app in kotlin", "see how to structure viewmodel and repository layers", "example of retrofit plus local database caching", "reference project for building an android weather app"], "what_it_is": "CoolWeather Jetpack is a weather app for Android implemented with the Jetpack architecture components and an MVVM design. It serves primarily as an educational reference project demonstrating layered architecture with ViewModel, repository, local persistence (LitePal), and networking (Retrofit).", "when_to_avoid": ["you need a production-ready weather app with active maintenance and features", "you target iOS or non-Android platforms", "you prefer Compose-first or other modern architecture samples"], "when_to_choose": ["you want a well-documented Kotlin example of MVVM with Jetpack components", "you are learning how to layer UI, ViewModel, repository, and data sources in Android", "you need a reference for offline-first weather data with caching"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/coolweatherjetpack", "repo": "guolindev/coolweatherjetpack", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:31.036844+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:43:48.856368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6f5a9ae52b0a89d36bac3bd67ace69eda536a4cf9bfb4f14e564b16fbd06c8c2", "fetched_at": "2026-08-28T04:06:31.036844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/guolindev/coolweatherjetpack"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:31.036844+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:43:48.856368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6f5a9ae52b0a89d36bac3bd67ace69eda536a4cf9bfb4f14e564b16fbd06c8c2", "fetched_at": "2026-08-28T04:06:31.036844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/guolindev/coolweatherjetpack"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:43:48.856368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6f5a9ae52b0a89d36bac3bd67ace69eda536a4cf9bfb4f14e564b16fbd06c8c2", "fetched_at": "2026-08-28T04:06:31.036844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/guolindev/coolweatherjetpack"}], "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:06:31.036844+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:31.036844+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:31.036844+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:43:48.856368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6f5a9ae52b0a89d36bac3bd67ace69eda536a4cf9bfb4f14e564b16fbd06c8c2", "fetched_at": "2026-08-28T04:06:31.036844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/guolindev/coolweatherjetpack"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:31.036844+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:31.036844+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:43:48.856368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6f5a9ae52b0a89d36bac3bd67ace69eda536a4cf9bfb4f14e564b16fbd06c8c2", "fetched_at": "2026-08-28T04:06:31.036844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/guolindev/coolweatherjetpack"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:31.036844+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:31.036844+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:31.036844+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:43:48.856368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6f5a9ae52b0a89d36bac3bd67ace69eda536a4cf9bfb4f14e564b16fbd06c8c2", "fetched_at": "2026-08-28T04:06:31.036844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/guolindev/coolweatherjetpack"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:31.036844+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:31.036844+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:43:48.856368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6f5a9ae52b0a89d36bac3bd67ace69eda536a4cf9bfb4f14e564b16fbd06c8c2", "fetched_at": "2026-08-28T04:06:31.036844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/guolindev/coolweatherjetpack"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:43:48.856368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6f5a9ae52b0a89d36bac3bd67ace69eda536a4cf9bfb4f14e564b16fbd06c8c2", "fetched_at": "2026-08-28T04:06:31.036844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/guolindev/coolweatherjetpack"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:43:48.856368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6f5a9ae52b0a89d36bac3bd67ace69eda536a4cf9bfb4f14e564b16fbd06c8c2", "fetched_at": "2026-08-28T04:06:31.036844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/guolindev/coolweatherjetpack"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:43:48.856368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6f5a9ae52b0a89d36bac3bd67ace69eda536a4cf9bfb4f14e564b16fbd06c8c2", "fetched_at": "2026-08-28T04:06:31.036844+00:00", "kind": "readme", "missing": false, "url": "https://github.com/guolindev/coolweatherjetpack"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2744, "days_push": 1093, "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}}