{"adoption": {"forks": 332, "observed_at": "2026-08-28T04:05:32.991049+00:00", "stars": 1764}, "canonical_url": "https://ross.abutalabs.com/products/aspectcore-framework", "card": {"archived": false, "artifact_type": "framework", "description": "AspectCore is an AOP-based cross platform framework for .NET Standard.", "domain": ["backend", "developer-tools", "web-development"], "enriched": true, "function": ["middleware", "developer-tools"], "health_score": 98, "homepage": null, "language": "C#", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["dotnetcore/AspectCore-Framework"], "name": "dotnetcore/AspectCore-Framework", "platform": ["dotnet", "cross-platform"], "pushed_at": "2026-08-11T06:20:29+00:00", "repo": "dotnetcore/AspectCore-Framework", "stars": 1764, "tags": ["aop", "aspect-oriented-programming", "interceptors", "netstandard", "dependency-injection-integration", "csharp", "dependency-injection"], "topics": ["aop", "aspect-oriented-programming", "netcore", "aspectcore-framework", "aspect"], "urls": [], "use_cases": ["add cross-cutting concerns like logging or caching via interceptors in .NET", "apply AOP to services without changing method bodies", "integrate aspect interceptors with Microsoft.Extensions.DependencyInjection", "implement data validation aspects in ASP.NET Core apps", "replace PostSharp-style compile-time weaving with a free runtime proxy approach"], "what_it_is": "AspectCore is an aspect-oriented programming (AOP) framework for .NET 6+ and .NET Standard, providing aspect interceptors, dependency injection integration, and support for web applications and data validation. It is distributed as a set of NuGet packages including core libraries and DI extensions.", "when_to_avoid": ["you need compile-time weaving or Fody-style IL rewriting", "your project targets .NET Framework only without .NET Standard support", "you prefer source generators or MediatR-style pipelines over proxy-based interception"], "when_to_choose": ["you build .NET 6+ applications and want runtime AOP via dynamic proxies", "you need interceptor support integrated with the built-in .NET dependency injection container", "you want an MIT-licensed, cross-platform AOP solution"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/aspectcore-framework", "repo": "dotnetcore/AspectCore-Framework", "role": "main", "score": 97}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:32.991049+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:26:38.011293+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fe6c3ab2aba9ae9a008bf8dcfbfbfac9ba5d23a9253842f776924fbae2b031ad", "fetched_at": "2026-08-28T04:05:32.991049+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dotnetcore/AspectCore-Framework"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:32.991049+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:26:38.011293+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fe6c3ab2aba9ae9a008bf8dcfbfbfac9ba5d23a9253842f776924fbae2b031ad", "fetched_at": "2026-08-28T04:05:32.991049+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dotnetcore/AspectCore-Framework"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:26:38.011293+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fe6c3ab2aba9ae9a008bf8dcfbfbfac9ba5d23a9253842f776924fbae2b031ad", "fetched_at": "2026-08-28T04:05:32.991049+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dotnetcore/AspectCore-Framework"}], "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:32.991049+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:32.991049+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:32.991049+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:26:38.011293+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fe6c3ab2aba9ae9a008bf8dcfbfbfac9ba5d23a9253842f776924fbae2b031ad", "fetched_at": "2026-08-28T04:05:32.991049+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dotnetcore/AspectCore-Framework"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:32.991049+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:32.991049+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:26:38.011293+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fe6c3ab2aba9ae9a008bf8dcfbfbfac9ba5d23a9253842f776924fbae2b031ad", "fetched_at": "2026-08-28T04:05:32.991049+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dotnetcore/AspectCore-Framework"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:32.991049+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:32.991049+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:32.991049+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:26:38.011293+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fe6c3ab2aba9ae9a008bf8dcfbfbfac9ba5d23a9253842f776924fbae2b031ad", "fetched_at": "2026-08-28T04:05:32.991049+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dotnetcore/AspectCore-Framework"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:32.991049+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:32.991049+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:26:38.011293+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fe6c3ab2aba9ae9a008bf8dcfbfbfac9ba5d23a9253842f776924fbae2b031ad", "fetched_at": "2026-08-28T04:05:32.991049+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dotnetcore/AspectCore-Framework"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:26:38.011293+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fe6c3ab2aba9ae9a008bf8dcfbfbfac9ba5d23a9253842f776924fbae2b031ad", "fetched_at": "2026-08-28T04:05:32.991049+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dotnetcore/AspectCore-Framework"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:26:38.011293+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fe6c3ab2aba9ae9a008bf8dcfbfbfac9ba5d23a9253842f776924fbae2b031ad", "fetched_at": "2026-08-28T04:05:32.991049+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dotnetcore/AspectCore-Framework"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:26:38.011293+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fe6c3ab2aba9ae9a008bf8dcfbfbfac9ba5d23a9253842f776924fbae2b031ad", "fetched_at": "2026-08-28T04:05:32.991049+00:00", "kind": "readme", "missing": false, "url": "https://github.com/dotnetcore/AspectCore-Framework"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 97, "longevity": 100, "rhythm": 95}, "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": 3695, "days_push": 22, "days_rel": 38, "gap_med": 5.0, "n_releases_24m": 3}, "score": 97, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}