{"adoption": {"forks": 146, "observed_at": "2026-08-28T04:05:28.873543+00:00", "stars": 1733}, "canonical_url": "https://ross.abutalabs.com/products/asynquence", "card": {"archived": true, "artifact_type": "library", "description": "Asynchronous flow control (promises, generators, observables, CSP, etc)", "domain": ["developer-tools", "web-development"], "enriched": true, "function": ["concurrency", "middleware"], "health_score": 10, "homepage": null, "language": "JavaScript", "license": null, "license_family": "other", "maturity": "maintenance", "member_repos": ["getify/asynquence"], "name": "getify/asynquence", "platform": ["browser", "cross-platform"], "pushed_at": "2020-03-04T12:19:15+00:00", "repo": "getify/asynquence", "stars": 1733, "tags": ["promises", "generators", "observables", "csp", "async-flow-control", "streams", "async-await", "javascript", "nodejs"], "topics": ["javascript", "async", "flow-control", "promises", "generators", "observables", "csp", "streams", "async-programming", "async-await", "library"], "urls": [], "use_cases": ["chain multiple async tasks in sequence without callback hell", "run async steps using generators or async/await", "coordinate parallel async tasks with gates and races", "emulate go-style CSP goroutines with generator coroutines", "handle event-reactive streams with observable-style sequences", "iterate over lists with async batch processing"], "what_it_is": "asynquence is a small JavaScript library providing promise-style async sequence flow control, built as an abstraction on top of promise chains. It supports expressing async steps with callbacks, promises, generators, observables, and CSP-style coroutine concurrency via contrib plugins.", "when_to_avoid": ["you only need native promises or async/await with no extra abstractions", "you want a actively developed library with recent releases", "you need a full reactive streams implementation like RxJS"], "when_to_choose": ["you want a lightweight, dependency-free async flow-control abstraction over promises", "you need mixed paradigms (callbacks, promises, generators, CSP) in one API", "you're following You Don't Know JS async patterns and want the companion library"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/asynquence", "repo": "getify/asynquence", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:28.873543+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:31:27.482836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "efb627165d16a50d99d926d9a9cf72289b46e20aef0e65f225187ffaedca8b07", "fetched_at": "2026-08-28T04:05:28.873543+00:00", "kind": "readme", "missing": false, "url": "https://github.com/getify/asynquence"}, {"content_hash": "3a000dafcde2b62356bb8a7b1017957155d2d5dd1333feff3e2675a5f008f8e8", "fetched_at": "2026-08-29T11:08:30.082196+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/asynquence"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:28.873543+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:31:27.482836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "efb627165d16a50d99d926d9a9cf72289b46e20aef0e65f225187ffaedca8b07", "fetched_at": "2026-08-28T04:05:28.873543+00:00", "kind": "readme", "missing": false, "url": "https://github.com/getify/asynquence"}, {"content_hash": "3a000dafcde2b62356bb8a7b1017957155d2d5dd1333feff3e2675a5f008f8e8", "fetched_at": "2026-08-29T11:08:30.082196+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/asynquence"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:31:27.482836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "efb627165d16a50d99d926d9a9cf72289b46e20aef0e65f225187ffaedca8b07", "fetched_at": "2026-08-28T04:05:28.873543+00:00", "kind": "readme", "missing": false, "url": "https://github.com/getify/asynquence"}, {"content_hash": "3a000dafcde2b62356bb8a7b1017957155d2d5dd1333feff3e2675a5f008f8e8", "fetched_at": "2026-08-29T11:08:30.082196+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/asynquence"}], "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:28.873543+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:28.873543+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:28.873543+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:31:27.482836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "efb627165d16a50d99d926d9a9cf72289b46e20aef0e65f225187ffaedca8b07", "fetched_at": "2026-08-28T04:05:28.873543+00:00", "kind": "readme", "missing": false, "url": "https://github.com/getify/asynquence"}, {"content_hash": "3a000dafcde2b62356bb8a7b1017957155d2d5dd1333feff3e2675a5f008f8e8", "fetched_at": "2026-08-29T11:08:30.082196+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/asynquence"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:28.873543+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:28.873543+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:31:27.482836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "efb627165d16a50d99d926d9a9cf72289b46e20aef0e65f225187ffaedca8b07", "fetched_at": "2026-08-28T04:05:28.873543+00:00", "kind": "readme", "missing": false, "url": "https://github.com/getify/asynquence"}, {"content_hash": "3a000dafcde2b62356bb8a7b1017957155d2d5dd1333feff3e2675a5f008f8e8", "fetched_at": "2026-08-29T11:08:30.082196+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/asynquence"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:28.873543+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:28.873543+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:28.873543+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:31:27.482836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "efb627165d16a50d99d926d9a9cf72289b46e20aef0e65f225187ffaedca8b07", "fetched_at": "2026-08-28T04:05:28.873543+00:00", "kind": "readme", "missing": false, "url": "https://github.com/getify/asynquence"}, {"content_hash": "3a000dafcde2b62356bb8a7b1017957155d2d5dd1333feff3e2675a5f008f8e8", "fetched_at": "2026-08-29T11:08:30.082196+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/asynquence"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:28.873543+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:28.873543+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:31:27.482836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "efb627165d16a50d99d926d9a9cf72289b46e20aef0e65f225187ffaedca8b07", "fetched_at": "2026-08-28T04:05:28.873543+00:00", "kind": "readme", "missing": false, "url": "https://github.com/getify/asynquence"}, {"content_hash": "3a000dafcde2b62356bb8a7b1017957155d2d5dd1333feff3e2675a5f008f8e8", "fetched_at": "2026-08-29T11:08:30.082196+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/asynquence"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:31:27.482836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "efb627165d16a50d99d926d9a9cf72289b46e20aef0e65f225187ffaedca8b07", "fetched_at": "2026-08-28T04:05:28.873543+00:00", "kind": "readme", "missing": false, "url": "https://github.com/getify/asynquence"}, {"content_hash": "3a000dafcde2b62356bb8a7b1017957155d2d5dd1333feff3e2675a5f008f8e8", "fetched_at": "2026-08-29T11:08:30.082196+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/asynquence"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:31:27.482836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "efb627165d16a50d99d926d9a9cf72289b46e20aef0e65f225187ffaedca8b07", "fetched_at": "2026-08-28T04:05:28.873543+00:00", "kind": "readme", "missing": false, "url": "https://github.com/getify/asynquence"}, {"content_hash": "3a000dafcde2b62356bb8a7b1017957155d2d5dd1333feff3e2675a5f008f8e8", "fetched_at": "2026-08-29T11:08:30.082196+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/asynquence"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:31:27.482836+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "efb627165d16a50d99d926d9a9cf72289b46e20aef0e65f225187ffaedca8b07", "fetched_at": "2026-08-28T04:05:28.873543+00:00", "kind": "readme", "missing": false, "url": "https://github.com/getify/asynquence"}, {"content_hash": "3a000dafcde2b62356bb8a7b1017957155d2d5dd1333feff3e2675a5f008f8e8", "fetched_at": "2026-08-29T11:08:30.082196+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/asynquence"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases", "archived", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 5322, "days_push": 2373, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 10, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}