{"adoption": {"forks": 62, "observed_at": "2026-08-28T04:04:00.930003+00:00", "stars": 1214}, "canonical_url": "https://ross.abutalabs.com/products/reaktive", "card": {"archived": false, "artifact_type": "library", "description": "Kotlin multi-platform implementation of Reactive Extensions", "domain": ["cross-platform", "mobile-development", "developer-tools"], "enriched": true, "function": ["concurrency", "developer-tools"], "health_score": 92, "homepage": null, "language": "Kotlin", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["badoo/Reaktive"], "name": "badoo/Reaktive", "platform": ["jvm", "wasm"], "pushed_at": "2026-08-19T06:24:41+00:00", "repo": "badoo/Reaktive", "stars": 1214, "tags": ["reactive-extensions", "kotlin-multiplatform", "rx", "observables", "schedulers", "coroutines-interop", "rxjava-interop", "android", "ios", "macos", "linux"], "topics": ["kotlin", "multiplatform", "reactive", "android", "ios", "cross-platform", "multi-platform", "rx", "kotlin-multiplatform", "kotlin-native", "reaktive", "rxkotlin"], "urls": [], "use_cases": ["reactive programming in Kotlin multiplatform projects", "share async reactive code between Android and iOS", "replace RxJava in a Kotlin multiplatform codebase", "interoperate between coroutines and Rx-style streams", "true multithreading reactive streams on Kotlin/Native", "use Rx operators like Observable and Single on JavaScript or native targets"], "what_it_is": "Reaktive is a Kotlin multiplatform implementation of Reactive Extensions (Rx), providing Observable, Single, Maybe, and Completable sources with scheduler support. It works across JVM, Android, iOS, macOS, watchOS, tvOS, JavaScript, and Linux X64, with interop modules for Kotlin coroutines and RxJava 2/3.", "when_to_avoid": ["your project is single-platform JVM and already uses RxJava or Project Reactor", "you prefer coroutine Flow over Rx-style APIs in Kotlin", "you need a reactive streams library for a non-Kotlin language"], "when_to_choose": ["you need Rx-style reactive streams shared across JVM, Android, iOS, and JS targets", "you want coroutines or RxJava interop in a multiplatform project", "you need multithreaded schedulers on Kotlin/Native"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/reaktive", "repo": "badoo/Reaktive", "role": "main", "score": 67}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:00.930003+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:17:21.146285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "342a0134086347b79d089abcfcde878a5d5702d13278526967771a939ae19d8d", "fetched_at": "2026-08-28T04:04:00.930003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/badoo/Reaktive"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:00.930003+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:17:21.146285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "342a0134086347b79d089abcfcde878a5d5702d13278526967771a939ae19d8d", "fetched_at": "2026-08-28T04:04:00.930003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/badoo/Reaktive"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:17:21.146285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "342a0134086347b79d089abcfcde878a5d5702d13278526967771a939ae19d8d", "fetched_at": "2026-08-28T04:04:00.930003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/badoo/Reaktive"}], "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:00.930003+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:00.930003+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:00.930003+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:17:21.146285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "342a0134086347b79d089abcfcde878a5d5702d13278526967771a939ae19d8d", "fetched_at": "2026-08-28T04:04:00.930003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/badoo/Reaktive"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:00.930003+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:00.930003+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:17:21.146285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "342a0134086347b79d089abcfcde878a5d5702d13278526967771a939ae19d8d", "fetched_at": "2026-08-28T04:04:00.930003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/badoo/Reaktive"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:00.930003+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:00.930003+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:00.930003+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:17:21.146285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "342a0134086347b79d089abcfcde878a5d5702d13278526967771a939ae19d8d", "fetched_at": "2026-08-28T04:04:00.930003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/badoo/Reaktive"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:00.930003+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:00.930003+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:17:21.146285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "342a0134086347b79d089abcfcde878a5d5702d13278526967771a939ae19d8d", "fetched_at": "2026-08-28T04:04:00.930003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/badoo/Reaktive"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:17:21.146285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "342a0134086347b79d089abcfcde878a5d5702d13278526967771a939ae19d8d", "fetched_at": "2026-08-28T04:04:00.930003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/badoo/Reaktive"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:17:21.146285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "342a0134086347b79d089abcfcde878a5d5702d13278526967771a939ae19d8d", "fetched_at": "2026-08-28T04:04:00.930003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/badoo/Reaktive"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:17:21.146285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "342a0134086347b79d089abcfcde878a5d5702d13278526967771a939ae19d8d", "fetched_at": "2026-08-28T04:04:00.930003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/badoo/Reaktive"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 98, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2737, "days_push": 14, "days_rel": 458, "gap_med": null, "n_releases_24m": 1}, "score": 67, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}