{"adoption": {"forks": 112, "observed_at": "2026-08-28T04:04:05.535572+00:00", "stars": 1238}, "canonical_url": "https://ross.abutalabs.com/products/reactivekit", "card": {"archived": false, "artifact_type": "framework", "description": "A Swift Reactive Programming Kit", "domain": ["developer-tools", "cross-platform"], "enriched": true, "function": ["state-management", "concurrency", "developer-tools"], "health_score": 65, "homepage": null, "language": "Swift", "license": "MIT", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["DeclarativeHub/ReactiveKit"], "name": "DeclarativeHub/ReactiveKit", "platform": [], "pushed_at": "2025-11-06T13:31:58+00:00", "repo": "DeclarativeHub/ReactiveKit", "stars": 1238, "tags": ["reactive-programming", "functional-reactive-programming", "swift", "combine-alignment", "signals", "bindings", "subjects", "ios", "macos", "linux"], "topics": [], "urls": [], "use_cases": ["reactive programming in Swift", "functional reactive programming for iOS apps", "bind async events to UI properties in Swift", "replace heavy RxSwift dependency with lightweight signals", "handle asynchronous event streams with operators", "interoperate with Apple's Combine framework", "manage observable state in Swift apps"], "what_it_is": "ReactiveKit is a lightweight Swift framework for reactive and functional reactive programming, built around Signals, Subjects, bindings, and property types. It runs on all Apple platforms and Linux and is gradually aligning its API with Apple's Combine framework while remaining backward compatible.", "when_to_avoid": ["you can use Apple's Combine directly and don't need Linux support", "you need a drop-in Combine replacement", "you want a large ecosystem of community operators and bindings like RxSwift"], "when_to_choose": ["you want a lightweight reactive programming framework in Swift", "you need Combine-like APIs on Linux or older Apple platform targets", "you use the Bond framework and need its reactive core", "you prefer gradual Combine API alignment over a full rewrite"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/reactivekit", "repo": "DeclarativeHub/ReactiveKit", "role": "main", "score": 58}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:05.535572+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T05:10:01.430861+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "78626f74f56dd803668e3e46360eba24120df064a5be3b49571f9179e69282e5", "fetched_at": "2026-08-28T04:04:05.535572+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeclarativeHub/ReactiveKit"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:05.535572+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T05:10:01.430861+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "78626f74f56dd803668e3e46360eba24120df064a5be3b49571f9179e69282e5", "fetched_at": "2026-08-28T04:04:05.535572+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeclarativeHub/ReactiveKit"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T05:10:01.430861+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "78626f74f56dd803668e3e46360eba24120df064a5be3b49571f9179e69282e5", "fetched_at": "2026-08-28T04:04:05.535572+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeclarativeHub/ReactiveKit"}], "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:04:05.535572+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:05.535572+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:05.535572+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T05:10:01.430861+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "78626f74f56dd803668e3e46360eba24120df064a5be3b49571f9179e69282e5", "fetched_at": "2026-08-28T04:04:05.535572+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeclarativeHub/ReactiveKit"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:05.535572+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:05.535572+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T05:10:01.430861+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "78626f74f56dd803668e3e46360eba24120df064a5be3b49571f9179e69282e5", "fetched_at": "2026-08-28T04:04:05.535572+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeclarativeHub/ReactiveKit"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:05.535572+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:05.535572+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:05.535572+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T05:10:01.430861+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "78626f74f56dd803668e3e46360eba24120df064a5be3b49571f9179e69282e5", "fetched_at": "2026-08-28T04:04:05.535572+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeclarativeHub/ReactiveKit"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:05.535572+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:05.535572+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T05:10:01.430861+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "78626f74f56dd803668e3e46360eba24120df064a5be3b49571f9179e69282e5", "fetched_at": "2026-08-28T04:04:05.535572+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeclarativeHub/ReactiveKit"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T05:10:01.430861+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "78626f74f56dd803668e3e46360eba24120df064a5be3b49571f9179e69282e5", "fetched_at": "2026-08-28T04:04:05.535572+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeclarativeHub/ReactiveKit"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T05:10:01.430861+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "78626f74f56dd803668e3e46360eba24120df064a5be3b49571f9179e69282e5", "fetched_at": "2026-08-28T04:04:05.535572+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeclarativeHub/ReactiveKit"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T05:10:01.430861+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "78626f74f56dd803668e3e46360eba24120df064a5be3b49571f9179e69282e5", "fetched_at": "2026-08-28T04:04:05.535572+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DeclarativeHub/ReactiveKit"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 50, "longevity": 100, "rhythm": 43}, "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": 3956, "days_push": 300, "days_rel": 300, "gap_med": 85, "n_releases_24m": 4}, "score": 58, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}