{"adoption": {"forks": 190, "observed_at": "2026-08-28T04:03:44.961827+00:00", "stars": 1143}, "canonical_url": "https://ross.abutalabs.com/products/compare-net-objects", "card": {"archived": false, "artifact_type": "library", "description": "What you have been waiting for :+1:  Perform a deep compare of any two .NET objects using reflection. Shows the differences between the two objects. ", "domain": ["developer-tools", "testing"], "enriched": true, "function": ["testing", "developer-tools", "serialization"], "health_score": 53, "homepage": "http://www.kellermansoftware.com", "language": "C#", "license": "MS-PL", "license_family": "other", "maturity": "active", "member_repos": ["GregFinzer/Compare-Net-Objects"], "name": "GregFinzer/Compare-Net-Objects", "platform": ["dotnet", "cross-platform", "windows"], "pushed_at": "2025-07-17T15:00:56+00:00", "repo": "GregFinzer/Compare-Net-Objects", "stars": 1143, "tags": ["deep-compare", "reflection", "object-diff", "unit-testing", "nuget", "dotnet"], "topics": [], "urls": [], "use_cases": ["deep compare two .NET objects in unit tests", "show differences between two object instances", "verify API response objects match expected values", "compare object graphs with circular references", "generate diff reports for object changes", "assert two DTOs are equal in NUnit tests"], "what_it_is": "A .NET library that performs deep comparison of any two objects using reflection and reports the differences between them. It supports extensive configuration options, multiple report formats, and integrates with test frameworks via assertion extensions.", "when_to_avoid": ["you only need simple reference or built-in Equals checks", "you are not working in the .NET ecosystem", "you need to diff text or files rather than in-memory objects"], "when_to_choose": ["you need deep equality checks with detailed difference output in .NET", "you want configurable comparison ignoring specific members or collection order", "you need HTML, CSV, or WinMerge-style diff reports for objects"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/compare-net-objects", "repo": "GregFinzer/Compare-Net-Objects", "role": "main", "score": 37}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:44.961827+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:34:54.101025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0842c16b3e1046f8aec1415a74049cad1f9dffefd51204edb3535ca160f9a67", "fetched_at": "2026-08-28T04:03:44.961827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GregFinzer/Compare-Net-Objects"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:44.961827+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:34:54.101025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0842c16b3e1046f8aec1415a74049cad1f9dffefd51204edb3535ca160f9a67", "fetched_at": "2026-08-28T04:03:44.961827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GregFinzer/Compare-Net-Objects"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:34:54.101025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0842c16b3e1046f8aec1415a74049cad1f9dffefd51204edb3535ca160f9a67", "fetched_at": "2026-08-28T04:03:44.961827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GregFinzer/Compare-Net-Objects"}], "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:03:44.961827+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:44.961827+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:44.961827+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:34:54.101025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0842c16b3e1046f8aec1415a74049cad1f9dffefd51204edb3535ca160f9a67", "fetched_at": "2026-08-28T04:03:44.961827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GregFinzer/Compare-Net-Objects"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:44.961827+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:44.961827+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:34:54.101025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0842c16b3e1046f8aec1415a74049cad1f9dffefd51204edb3535ca160f9a67", "fetched_at": "2026-08-28T04:03:44.961827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GregFinzer/Compare-Net-Objects"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:44.961827+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:44.961827+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:44.961827+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:34:54.101025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0842c16b3e1046f8aec1415a74049cad1f9dffefd51204edb3535ca160f9a67", "fetched_at": "2026-08-28T04:03:44.961827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GregFinzer/Compare-Net-Objects"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:44.961827+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:44.961827+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:34:54.101025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0842c16b3e1046f8aec1415a74049cad1f9dffefd51204edb3535ca160f9a67", "fetched_at": "2026-08-28T04:03:44.961827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GregFinzer/Compare-Net-Objects"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:34:54.101025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0842c16b3e1046f8aec1415a74049cad1f9dffefd51204edb3535ca160f9a67", "fetched_at": "2026-08-28T04:03:44.961827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GregFinzer/Compare-Net-Objects"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:34:54.101025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0842c16b3e1046f8aec1415a74049cad1f9dffefd51204edb3535ca160f9a67", "fetched_at": "2026-08-28T04:03:44.961827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GregFinzer/Compare-Net-Objects"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:34:54.101025+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e0842c16b3e1046f8aec1415a74049cad1f9dffefd51204edb3535ca160f9a67", "fetched_at": "2026-08-28T04:03:44.961827+00:00", "kind": "readme", "missing": false, "url": "https://github.com/GregFinzer/Compare-Net-Objects"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 32, "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": 3875, "days_push": 412, "days_rel": 412, "gap_med": null, "n_releases_24m": 1}, "score": 37, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}