{"adoption": {"forks": 32, "observed_at": "2026-08-28T04:04:33.253171+00:00", "stars": 1376}, "canonical_url": "https://ross.abutalabs.com/products/destr", "card": {"archived": false, "artifact_type": "library", "description": "🚀 Faster, secure and convenient alternative for JSON.parse for arbitrary inputs", "domain": ["developer-tools", "web-development", "backend", "apis"], "enriched": true, "function": ["serialization", "parser", "security"], "health_score": 92, "homepage": null, "language": "TypeScript", "license": "MIT", "license_family": "permissive", "maturity": "stable", "member_repos": ["unjs/destr"], "name": "unjs/destr", "platform": ["bun", "cross-platform"], "pushed_at": "2026-08-25T16:37:36+00:00", "repo": "unjs/destr", "stars": 1376, "tags": ["-parse", "prototype-pollution", "typescript", "untrusted-input", "safe-parsing", "nodejs", "deno"], "topics": ["node", "nodejs", "deno", "json", "jsonparse"], "urls": [], "use_cases": ["safely parse untrusted JSON from request bodies", "parse config values that may or may not be JSON strings", "avoid crashes from JSON.parse on undefined or plain strings", "prevent prototype pollution attacks when parsing JSON", "get typed JSON parsing results in TypeScript", "strictly validate JSON strings with safeDestr"], "what_it_is": "destr is a TypeScript library providing a faster, safer alternative to JSON.parse for arbitrary inputs. It gracefully falls back to the original value on parse failure, handles non-string inputs, and sanitizes __proto__ keys to prevent prototype pollution.", "when_to_avoid": ["you only parse known-valid, trusted JSON where raw JSON.parse performance matters most", "you need full JSON5 or comment-tolerant parsing", "you need strict schema validation of parsed structures"], "when_to_choose": ["input is arbitrary or from untrusted sources like HTTP request bodies", "you want graceful fallback instead of SyntaxError on invalid input", "you need protection against prototype pollution in parsed JSON", "you want a tiny, fast drop-in replacement for JSON.parse"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/destr", "repo": "unjs/destr", "role": "main", "score": 79}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:33.253171+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:40:32.612004+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1532bba48dda30286f72cfbfe8b7f0df895bf9446c57b409b0c75df805b2ded3", "fetched_at": "2026-08-28T04:04:33.253171+00:00", "kind": "readme", "missing": false, "url": "https://github.com/unjs/destr"}, {"content_hash": "da144df9e2d8ab40036da5dbff8d3ca574772c54eb3e1103ca54ea3655fb0a36", "fetched_at": "2026-08-29T11:57:01.771688+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/destr"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:33.253171+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:40:32.612004+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1532bba48dda30286f72cfbfe8b7f0df895bf9446c57b409b0c75df805b2ded3", "fetched_at": "2026-08-28T04:04:33.253171+00:00", "kind": "readme", "missing": false, "url": "https://github.com/unjs/destr"}, {"content_hash": "da144df9e2d8ab40036da5dbff8d3ca574772c54eb3e1103ca54ea3655fb0a36", "fetched_at": "2026-08-29T11:57:01.771688+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/destr"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:40:32.612004+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1532bba48dda30286f72cfbfe8b7f0df895bf9446c57b409b0c75df805b2ded3", "fetched_at": "2026-08-28T04:04:33.253171+00:00", "kind": "readme", "missing": false, "url": "https://github.com/unjs/destr"}, {"content_hash": "da144df9e2d8ab40036da5dbff8d3ca574772c54eb3e1103ca54ea3655fb0a36", "fetched_at": "2026-08-29T11:57:01.771688+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/destr"}], "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:33.253171+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:33.253171+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:33.253171+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:40:32.612004+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1532bba48dda30286f72cfbfe8b7f0df895bf9446c57b409b0c75df805b2ded3", "fetched_at": "2026-08-28T04:04:33.253171+00:00", "kind": "readme", "missing": false, "url": "https://github.com/unjs/destr"}, {"content_hash": "da144df9e2d8ab40036da5dbff8d3ca574772c54eb3e1103ca54ea3655fb0a36", "fetched_at": "2026-08-29T11:57:01.771688+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/destr"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:33.253171+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:33.253171+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:40:32.612004+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1532bba48dda30286f72cfbfe8b7f0df895bf9446c57b409b0c75df805b2ded3", "fetched_at": "2026-08-28T04:04:33.253171+00:00", "kind": "readme", "missing": false, "url": "https://github.com/unjs/destr"}, {"content_hash": "da144df9e2d8ab40036da5dbff8d3ca574772c54eb3e1103ca54ea3655fb0a36", "fetched_at": "2026-08-29T11:57:01.771688+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/destr"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:33.253171+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:33.253171+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:33.253171+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:40:32.612004+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1532bba48dda30286f72cfbfe8b7f0df895bf9446c57b409b0c75df805b2ded3", "fetched_at": "2026-08-28T04:04:33.253171+00:00", "kind": "readme", "missing": false, "url": "https://github.com/unjs/destr"}, {"content_hash": "da144df9e2d8ab40036da5dbff8d3ca574772c54eb3e1103ca54ea3655fb0a36", "fetched_at": "2026-08-29T11:57:01.771688+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/destr"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:33.253171+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:33.253171+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:40:32.612004+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1532bba48dda30286f72cfbfe8b7f0df895bf9446c57b409b0c75df805b2ded3", "fetched_at": "2026-08-28T04:04:33.253171+00:00", "kind": "readme", "missing": false, "url": "https://github.com/unjs/destr"}, {"content_hash": "da144df9e2d8ab40036da5dbff8d3ca574772c54eb3e1103ca54ea3655fb0a36", "fetched_at": "2026-08-29T11:57:01.771688+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/destr"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:40:32.612004+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1532bba48dda30286f72cfbfe8b7f0df895bf9446c57b409b0c75df805b2ded3", "fetched_at": "2026-08-28T04:04:33.253171+00:00", "kind": "readme", "missing": false, "url": "https://github.com/unjs/destr"}, {"content_hash": "da144df9e2d8ab40036da5dbff8d3ca574772c54eb3e1103ca54ea3655fb0a36", "fetched_at": "2026-08-29T11:57:01.771688+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/destr"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:40:32.612004+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1532bba48dda30286f72cfbfe8b7f0df895bf9446c57b409b0c75df805b2ded3", "fetched_at": "2026-08-28T04:04:33.253171+00:00", "kind": "readme", "missing": false, "url": "https://github.com/unjs/destr"}, {"content_hash": "da144df9e2d8ab40036da5dbff8d3ca574772c54eb3e1103ca54ea3655fb0a36", "fetched_at": "2026-08-29T11:57:01.771688+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/destr"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:40:32.612004+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1532bba48dda30286f72cfbfe8b7f0df895bf9446c57b409b0c75df805b2ded3", "fetched_at": "2026-08-28T04:04:33.253171+00:00", "kind": "readme", "missing": false, "url": "https://github.com/unjs/destr"}, {"content_hash": "da144df9e2d8ab40036da5dbff8d3ca574772c54eb3e1103ca54ea3655fb0a36", "fetched_at": "2026-08-29T11:57:01.771688+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/destr"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 40}, "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": 2296, "days_push": 8, "days_rel": 517, "gap_med": 0, "n_releases_24m": 2}, "score": 79, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}