{"adoption": {"forks": 82, "observed_at": "2026-08-28T04:06:56.547207+00:00", "stars": 2493}, "canonical_url": "https://ross.abutalabs.com/products/fluture", "card": {"archived": false, "artifact_type": "library", "description": "🦋 Fantasy Land compliant (monadic) alternative to Promises", "domain": ["developer-tools", "web-development"], "enriched": true, "function": ["concurrency", "error-handling"], "health_score": 20, "homepage": null, "language": "JavaScript", "license": "MIT", "license_family": "permissive", "maturity": "stable", "member_repos": ["fluture-js/Fluture"], "name": "fluture-js/Fluture", "platform": ["browser"], "pushed_at": "2024-04-22T19:36:55+00:00", "repo": "fluture-js/Fluture", "stars": 2493, "tags": ["fantasy-land", "monad", "promise-alternative", "async", "cancellation", "functional-programming", "futures", "nodejs", "deno", "javascript"], "topics": ["fantasy-land", "promise", "future", "monad", "async", "control-flow", "algebraic-data-types", "functional-programming", "fluture", "cancellation", "sanctuary"], "urls": [], "use_cases": ["replace promises with lazy cancellable async computations", "compose asynchronous operations monadically in JavaScript", "manage async resources with safe acquisition and release", "avoid stack overflows in deep async recursion", "integrate async control flow with Sanctuary and Fantasy Land"], "what_it_is": "Fluture is a Fantasy Land compliant, monadic alternative to JavaScript Promises, representing asynchronous operations as lazy, composable Futures. It provides cancellation, resource management, stack-safe composition, and Sanctuary integration.", "when_to_avoid": ["you just need simple promise-based async and don't want functional programming concepts", "your team is unfamiliar with monads and algebraic data types", "you need a widely maintained library with frequent updates"], "when_to_choose": ["you want lazy, cancellable async control flow instead of eager Promises", "you work in a functional programming style and need monadic composition", "you need stack-safe recursion and resource management for async I/O"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/fluture", "repo": "fluture-js/Fluture", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.547207+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:27:18.893462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b122ff5e1dd197c478ab5740c7589d5b958f69dd2238309c8889c07634d44aee", "fetched_at": "2026-08-28T04:06:56.547207+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fluture-js/Fluture"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.547207+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:27:18.893462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b122ff5e1dd197c478ab5740c7589d5b958f69dd2238309c8889c07634d44aee", "fetched_at": "2026-08-28T04:06:56.547207+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fluture-js/Fluture"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:27:18.893462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b122ff5e1dd197c478ab5740c7589d5b958f69dd2238309c8889c07634d44aee", "fetched_at": "2026-08-28T04:06:56.547207+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fluture-js/Fluture"}], "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:56.547207+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.547207+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.547207+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:27:18.893462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b122ff5e1dd197c478ab5740c7589d5b958f69dd2238309c8889c07634d44aee", "fetched_at": "2026-08-28T04:06:56.547207+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fluture-js/Fluture"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.547207+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.547207+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:27:18.893462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b122ff5e1dd197c478ab5740c7589d5b958f69dd2238309c8889c07634d44aee", "fetched_at": "2026-08-28T04:06:56.547207+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fluture-js/Fluture"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.547207+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.547207+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.547207+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:27:18.893462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b122ff5e1dd197c478ab5740c7589d5b958f69dd2238309c8889c07634d44aee", "fetched_at": "2026-08-28T04:06:56.547207+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fluture-js/Fluture"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.547207+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.547207+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:27:18.893462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b122ff5e1dd197c478ab5740c7589d5b958f69dd2238309c8889c07634d44aee", "fetched_at": "2026-08-28T04:06:56.547207+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fluture-js/Fluture"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:27:18.893462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b122ff5e1dd197c478ab5740c7589d5b958f69dd2238309c8889c07634d44aee", "fetched_at": "2026-08-28T04:06:56.547207+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fluture-js/Fluture"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:27:18.893462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b122ff5e1dd197c478ab5740c7589d5b958f69dd2238309c8889c07634d44aee", "fetched_at": "2026-08-28T04:06:56.547207+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fluture-js/Fluture"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:27:18.893462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b122ff5e1dd197c478ab5740c7589d5b958f69dd2238309c8889c07634d44aee", "fetched_at": "2026-08-28T04:06:56.547207+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fluture-js/Fluture"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "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": 3832, "days_push": 863, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 23, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}