{"adoption": {"forks": 290, "observed_at": "2026-08-28T04:03:24.446701+00:00", "stars": 1056}, "canonical_url": "https://ross.abutalabs.com/products/identitymodel", "card": {"archived": true, "artifact_type": "library", "description": ".NET standard helper library for claims-based identity, OAuth 2.0 and OpenID Connect.", "domain": ["security", "apis", "developer-tools"], "enriched": true, "function": ["auth", "http-client", "sdk"], "health_score": 10, "homepage": null, "language": "C#", "license": "Apache-2.0", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["DuendeArchive/IdentityModel"], "name": "DuendeArchive/IdentityModel", "platform": ["dotnet", "cross-platform"], "pushed_at": "2024-11-12T20:34:57+00:00", "repo": "DuendeArchive/IdentityModel", "stars": 1056, "tags": ["oauth2", "openid-connect", "claims-based-identity", "identityserver", "csharp"], "topics": ["identity", "identityserver", "oauth2", "openid-connect"], "urls": [], "use_cases": ["make OAuth 2.0 token requests from .NET", "interact with OpenID Connect discovery and token endpoints", "work with standard claims, scopes, and parameter names", "validate and parse identity tokens in .NET apps", "implement client credentials or authorization code flows in C#"], "what_it_is": "IdentityModel is a .NET Standard helper library for claims-based identity, OAuth 2.0, and OpenID Connect. It provides request/response object models, extension methods, and specification constants for interacting with OAuth and OIDC endpoints. Note: the project is being rebranded to Duende.IdentityModel and moved to the DuendeSoftware/foss repository.", "when_to_avoid": ["starting new projects - use the rebranded Duende.IdentityModel package instead", "you need a full authentication UI or user session management rather than protocol helpers", "you are not on the .NET platform"], "when_to_choose": ["you need a lightweight .NET helper for OAuth 2.0 / OIDC protocol operations", "you are building clients against IdentityServer or any compliant OIDC provider", "you want specification constants and request/response models instead of raw HTTP calls"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/identitymodel", "repo": "DuendeArchive/IdentityModel", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.446701+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:58:14.545445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bab886215a1bead3cfac7d1e339f55ad4385cf2fad8d56fdef0b3a24738dee25", "fetched_at": "2026-08-28T04:03:24.446701+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DuendeArchive/IdentityModel"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.446701+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:58:14.545445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bab886215a1bead3cfac7d1e339f55ad4385cf2fad8d56fdef0b3a24738dee25", "fetched_at": "2026-08-28T04:03:24.446701+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DuendeArchive/IdentityModel"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:58:14.545445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bab886215a1bead3cfac7d1e339f55ad4385cf2fad8d56fdef0b3a24738dee25", "fetched_at": "2026-08-28T04:03:24.446701+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DuendeArchive/IdentityModel"}], "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:24.446701+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.446701+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.446701+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:58:14.545445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bab886215a1bead3cfac7d1e339f55ad4385cf2fad8d56fdef0b3a24738dee25", "fetched_at": "2026-08-28T04:03:24.446701+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DuendeArchive/IdentityModel"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.446701+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.446701+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:58:14.545445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bab886215a1bead3cfac7d1e339f55ad4385cf2fad8d56fdef0b3a24738dee25", "fetched_at": "2026-08-28T04:03:24.446701+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DuendeArchive/IdentityModel"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.446701+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.446701+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.446701+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:58:14.545445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bab886215a1bead3cfac7d1e339f55ad4385cf2fad8d56fdef0b3a24738dee25", "fetched_at": "2026-08-28T04:03:24.446701+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DuendeArchive/IdentityModel"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.446701+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.446701+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:58:14.545445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bab886215a1bead3cfac7d1e339f55ad4385cf2fad8d56fdef0b3a24738dee25", "fetched_at": "2026-08-28T04:03:24.446701+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DuendeArchive/IdentityModel"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:58:14.545445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bab886215a1bead3cfac7d1e339f55ad4385cf2fad8d56fdef0b3a24738dee25", "fetched_at": "2026-08-28T04:03:24.446701+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DuendeArchive/IdentityModel"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:58:14.545445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bab886215a1bead3cfac7d1e339f55ad4385cf2fad8d56fdef0b3a24738dee25", "fetched_at": "2026-08-28T04:03:24.446701+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DuendeArchive/IdentityModel"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:58:14.545445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bab886215a1bead3cfac7d1e339f55ad4385cf2fad8d56fdef0b3a24738dee25", "fetched_at": "2026-08-28T04:03:24.446701+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DuendeArchive/IdentityModel"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["archived"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3933, "days_push": 659, "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}}