{"adoption": {"forks": 184, "observed_at": "2026-08-28T04:05:38.178833+00:00", "stars": 1802}, "canonical_url": "https://ross.abutalabs.com/products/tsw", "card": {"archived": false, "artifact_type": "framework", "description": "Tencent Server Web", "domain": ["backend", "web-development", "developer-tools", "monitoring"], "enriched": true, "function": ["monitoring", "logging", "tracing", "http-server", "middleware", "plugin-system"], "health_score": 85, "homepage": "https://tswjs.org/", "language": "TypeScript", "license": "NOASSERTION", "license_family": "other", "maturity": "active", "member_repos": ["Tencent/TSW"], "name": "Tencent/TSW", "platform": ["cross-platform"], "pushed_at": "2026-04-17T02:37:42+00:00", "repo": "Tencent/TSW", "stars": 1802, "tags": ["observability", "request-capture", "holographic-logging", "tencent", "koa", "express", "esm", "diagnostics", "nodejs"], "topics": ["nodejs", "javascript", "web", "tsw", "js", "server", "monitor", "log", "capture", "observability"], "urls": [], "use_cases": ["capture full outbound http request bodies from a node server for debugging", "reconstruct the exact state of a failed request with per-request clustered logs", "add observability to a koa or express app without changing business code", "debug backend api issues by replaying captured server traffic", "monitor nodejs production services with request-level log aggregation"], "what_it_is": "Tencent Server Web (TSW) is a Node.js infrastructure framework for web backend developers that provides request capture (packet sniffing of outbound server requests) and request-clustered 'holographic' logging with zero code intrusion. It integrates seamlessly with existing Koa and Express applications and is cloud-native and containerization friendly.", "when_to_avoid": ["you are not on Node.js (requires Node.js >= 24 for 3.0)", "you need a general-purpose web framework rather than an observability layer", "you rely on older Node versions or the Domain API"], "when_to_choose": ["you run Node.js http/https services and need deep request-level diagnostics", "you want packet capture and log clustering with zero code changes", "your stack is Koa or Express and you need non-intrusive monitoring"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/tsw", "repo": "Tencent/TSW", "role": "main", "score": 83}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.178833+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:21:53.779086+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b04fd0ecf2955d44cef96b0af77eeea92eabe30ffb970bf3e824c0d4a54ea7f6", "fetched_at": "2026-08-28T04:05:38.178833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Tencent/TSW"}, {"content_hash": "bf6df701d9f64bb16499882ea666679422b0d28d82e63d3b085874dc7b80fb37", "fetched_at": "2026-08-29T11:01:10.064677+00:00", "kind": "homepage", "missing": false, "url": "https://tswjs.org/"}, {"content_hash": "edc6daf626f61755c082d29ad060d7f90653bd57dafea0d17b85793001ad5026", "fetched_at": "2026-08-29T11:01:10.074745+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/guide/about"}, {"content_hash": "57e7abfa4ecfd15070f713b2490cdf6ba83c0e050985137a969c18fb3bbb43fe", "fetched_at": "2026-08-29T11:01:10.076539+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/weworkinstall"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.178833+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:21:53.779086+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b04fd0ecf2955d44cef96b0af77eeea92eabe30ffb970bf3e824c0d4a54ea7f6", "fetched_at": "2026-08-28T04:05:38.178833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Tencent/TSW"}, {"content_hash": "bf6df701d9f64bb16499882ea666679422b0d28d82e63d3b085874dc7b80fb37", "fetched_at": "2026-08-29T11:01:10.064677+00:00", "kind": "homepage", "missing": false, "url": "https://tswjs.org/"}, {"content_hash": "edc6daf626f61755c082d29ad060d7f90653bd57dafea0d17b85793001ad5026", "fetched_at": "2026-08-29T11:01:10.074745+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/guide/about"}, {"content_hash": "57e7abfa4ecfd15070f713b2490cdf6ba83c0e050985137a969c18fb3bbb43fe", "fetched_at": "2026-08-29T11:01:10.076539+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/weworkinstall"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:21:53.779086+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b04fd0ecf2955d44cef96b0af77eeea92eabe30ffb970bf3e824c0d4a54ea7f6", "fetched_at": "2026-08-28T04:05:38.178833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Tencent/TSW"}, {"content_hash": "bf6df701d9f64bb16499882ea666679422b0d28d82e63d3b085874dc7b80fb37", "fetched_at": "2026-08-29T11:01:10.064677+00:00", "kind": "homepage", "missing": false, "url": "https://tswjs.org/"}, {"content_hash": "edc6daf626f61755c082d29ad060d7f90653bd57dafea0d17b85793001ad5026", "fetched_at": "2026-08-29T11:01:10.074745+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/guide/about"}, {"content_hash": "57e7abfa4ecfd15070f713b2490cdf6ba83c0e050985137a969c18fb3bbb43fe", "fetched_at": "2026-08-29T11:01:10.076539+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/weworkinstall"}], "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:38.178833+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.178833+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.178833+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:21:53.779086+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b04fd0ecf2955d44cef96b0af77eeea92eabe30ffb970bf3e824c0d4a54ea7f6", "fetched_at": "2026-08-28T04:05:38.178833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Tencent/TSW"}, {"content_hash": "bf6df701d9f64bb16499882ea666679422b0d28d82e63d3b085874dc7b80fb37", "fetched_at": "2026-08-29T11:01:10.064677+00:00", "kind": "homepage", "missing": false, "url": "https://tswjs.org/"}, {"content_hash": "edc6daf626f61755c082d29ad060d7f90653bd57dafea0d17b85793001ad5026", "fetched_at": "2026-08-29T11:01:10.074745+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/guide/about"}, {"content_hash": "57e7abfa4ecfd15070f713b2490cdf6ba83c0e050985137a969c18fb3bbb43fe", "fetched_at": "2026-08-29T11:01:10.076539+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/weworkinstall"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.178833+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.178833+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:21:53.779086+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b04fd0ecf2955d44cef96b0af77eeea92eabe30ffb970bf3e824c0d4a54ea7f6", "fetched_at": "2026-08-28T04:05:38.178833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Tencent/TSW"}, {"content_hash": "bf6df701d9f64bb16499882ea666679422b0d28d82e63d3b085874dc7b80fb37", "fetched_at": "2026-08-29T11:01:10.064677+00:00", "kind": "homepage", "missing": false, "url": "https://tswjs.org/"}, {"content_hash": "edc6daf626f61755c082d29ad060d7f90653bd57dafea0d17b85793001ad5026", "fetched_at": "2026-08-29T11:01:10.074745+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/guide/about"}, {"content_hash": "57e7abfa4ecfd15070f713b2490cdf6ba83c0e050985137a969c18fb3bbb43fe", "fetched_at": "2026-08-29T11:01:10.076539+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/weworkinstall"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.178833+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.178833+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.178833+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:21:53.779086+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b04fd0ecf2955d44cef96b0af77eeea92eabe30ffb970bf3e824c0d4a54ea7f6", "fetched_at": "2026-08-28T04:05:38.178833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Tencent/TSW"}, {"content_hash": "bf6df701d9f64bb16499882ea666679422b0d28d82e63d3b085874dc7b80fb37", "fetched_at": "2026-08-29T11:01:10.064677+00:00", "kind": "homepage", "missing": false, "url": "https://tswjs.org/"}, {"content_hash": "edc6daf626f61755c082d29ad060d7f90653bd57dafea0d17b85793001ad5026", "fetched_at": "2026-08-29T11:01:10.074745+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/guide/about"}, {"content_hash": "57e7abfa4ecfd15070f713b2490cdf6ba83c0e050985137a969c18fb3bbb43fe", "fetched_at": "2026-08-29T11:01:10.076539+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/weworkinstall"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.178833+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.178833+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:21:53.779086+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b04fd0ecf2955d44cef96b0af77eeea92eabe30ffb970bf3e824c0d4a54ea7f6", "fetched_at": "2026-08-28T04:05:38.178833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Tencent/TSW"}, {"content_hash": "bf6df701d9f64bb16499882ea666679422b0d28d82e63d3b085874dc7b80fb37", "fetched_at": "2026-08-29T11:01:10.064677+00:00", "kind": "homepage", "missing": false, "url": "https://tswjs.org/"}, {"content_hash": "edc6daf626f61755c082d29ad060d7f90653bd57dafea0d17b85793001ad5026", "fetched_at": "2026-08-29T11:01:10.074745+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/guide/about"}, {"content_hash": "57e7abfa4ecfd15070f713b2490cdf6ba83c0e050985137a969c18fb3bbb43fe", "fetched_at": "2026-08-29T11:01:10.076539+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/weworkinstall"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:21:53.779086+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b04fd0ecf2955d44cef96b0af77eeea92eabe30ffb970bf3e824c0d4a54ea7f6", "fetched_at": "2026-08-28T04:05:38.178833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Tencent/TSW"}, {"content_hash": "bf6df701d9f64bb16499882ea666679422b0d28d82e63d3b085874dc7b80fb37", "fetched_at": "2026-08-29T11:01:10.064677+00:00", "kind": "homepage", "missing": false, "url": "https://tswjs.org/"}, {"content_hash": "edc6daf626f61755c082d29ad060d7f90653bd57dafea0d17b85793001ad5026", "fetched_at": "2026-08-29T11:01:10.074745+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/guide/about"}, {"content_hash": "57e7abfa4ecfd15070f713b2490cdf6ba83c0e050985137a969c18fb3bbb43fe", "fetched_at": "2026-08-29T11:01:10.076539+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/weworkinstall"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:21:53.779086+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b04fd0ecf2955d44cef96b0af77eeea92eabe30ffb970bf3e824c0d4a54ea7f6", "fetched_at": "2026-08-28T04:05:38.178833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Tencent/TSW"}, {"content_hash": "bf6df701d9f64bb16499882ea666679422b0d28d82e63d3b085874dc7b80fb37", "fetched_at": "2026-08-29T11:01:10.064677+00:00", "kind": "homepage", "missing": false, "url": "https://tswjs.org/"}, {"content_hash": "edc6daf626f61755c082d29ad060d7f90653bd57dafea0d17b85793001ad5026", "fetched_at": "2026-08-29T11:01:10.074745+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/guide/about"}, {"content_hash": "57e7abfa4ecfd15070f713b2490cdf6ba83c0e050985137a969c18fb3bbb43fe", "fetched_at": "2026-08-29T11:01:10.076539+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/weworkinstall"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:21:53.779086+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b04fd0ecf2955d44cef96b0af77eeea92eabe30ffb970bf3e824c0d4a54ea7f6", "fetched_at": "2026-08-28T04:05:38.178833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Tencent/TSW"}, {"content_hash": "bf6df701d9f64bb16499882ea666679422b0d28d82e63d3b085874dc7b80fb37", "fetched_at": "2026-08-29T11:01:10.064677+00:00", "kind": "homepage", "missing": false, "url": "https://tswjs.org/"}, {"content_hash": "edc6daf626f61755c082d29ad060d7f90653bd57dafea0d17b85793001ad5026", "fetched_at": "2026-08-29T11:01:10.074745+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/guide/about"}, {"content_hash": "57e7abfa4ecfd15070f713b2490cdf6ba83c0e050985137a969c18fb3bbb43fe", "fetched_at": "2026-08-29T11:01:10.076539+00:00", "kind": "site_page", "missing": false, "url": "https://tswjs.org/weworkinstall"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 77, "longevity": 100, "rhythm": 80}, "computed_at": "2026-09-03T02:39:23.370411+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3039, "days_push": 139, "days_rel": 139, "gap_med": 10, "n_releases_24m": 6}, "score": 83, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}