{"adoption": {"forks": 145, "observed_at": "2026-08-28T04:04:17.606480+00:00", "stars": 1301}, "canonical_url": "https://ross.abutalabs.com/products/sieve", "card": {"archived": false, "artifact_type": "library", "description": "⚗️ Clean & extensible Sorting, Filtering, and Pagination for ASP.NET Core", "domain": ["web-development", "backend", "apis"], "enriched": true, "function": ["web-framework", "middleware", "search-engine"], "health_score": 20, "homepage": null, "language": "C#", "license": "NOASSERTION", "license_family": "other", "maturity": "maintenance", "member_repos": ["Biarity/Sieve"], "name": "Biarity/Sieve", "platform": ["dotnet"], "pushed_at": "2024-05-27T20:13:20+00:00", "repo": "Biarity/Sieve", "stars": 1301, "tags": ["aspnetcore", "sorting", "filtering", "pagination", "querying", "entity-framework", "web-server"], "topics": ["sort", "filter", "pagination", "aspnetcore", "asp-net-core-mvc", "netcore2"], "urls": [], "use_cases": ["add sorting, filtering, and pagination to ASP.NET Core GET endpoints", "let clients sort and filter API results via query parameters", "paginate large Entity Framework query results", "declare filterable and sortable model properties with attributes or a fluent API", "add custom sort and filter methods to API queries"], "what_it_is": "Sieve is a .NET Core library that adds sorting, filtering, and pagination to ASP.NET Core APIs, typically applied to Entity Framework queries in GET endpoints. It uses attributes or a fluent API to declare which model properties are sortable and filterable, and processes client-supplied query parameters via a SieveModel.", "when_to_avoid": ["you're not on .NET / ASP.NET Core", "you need full-text or fuzzy search rather than simple field filtering", "you want GraphQL-style flexible querying or OData", "the project appears to be in maintenance with limited recent feature development"], "when_to_choose": ["you're building an ASP.NET Core REST API backed by EF Core and need consistent list-endpoint querying", "you want a lightweight, declarative alternative to hand-writing sort/filter/pagination logic", "you need extensible custom filter/sort behavior per entity"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/sieve", "repo": "Biarity/Sieve", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.606480+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:52:12.956080+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "781ab821147d84285b7c50d91ecdd54610b2bb6318252d4c8ca0731a0dfba49b", "fetched_at": "2026-08-28T04:04:17.606480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Biarity/Sieve"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.606480+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:52:12.956080+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "781ab821147d84285b7c50d91ecdd54610b2bb6318252d4c8ca0731a0dfba49b", "fetched_at": "2026-08-28T04:04:17.606480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Biarity/Sieve"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:52:12.956080+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "781ab821147d84285b7c50d91ecdd54610b2bb6318252d4c8ca0731a0dfba49b", "fetched_at": "2026-08-28T04:04:17.606480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Biarity/Sieve"}], "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:17.606480+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.606480+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.606480+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:52:12.956080+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "781ab821147d84285b7c50d91ecdd54610b2bb6318252d4c8ca0731a0dfba49b", "fetched_at": "2026-08-28T04:04:17.606480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Biarity/Sieve"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.606480+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.606480+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:52:12.956080+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "781ab821147d84285b7c50d91ecdd54610b2bb6318252d4c8ca0731a0dfba49b", "fetched_at": "2026-08-28T04:04:17.606480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Biarity/Sieve"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.606480+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.606480+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.606480+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:52:12.956080+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "781ab821147d84285b7c50d91ecdd54610b2bb6318252d4c8ca0731a0dfba49b", "fetched_at": "2026-08-28T04:04:17.606480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Biarity/Sieve"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.606480+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:17.606480+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:52:12.956080+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "781ab821147d84285b7c50d91ecdd54610b2bb6318252d4c8ca0731a0dfba49b", "fetched_at": "2026-08-28T04:04:17.606480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Biarity/Sieve"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:52:12.956080+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "781ab821147d84285b7c50d91ecdd54610b2bb6318252d4c8ca0731a0dfba49b", "fetched_at": "2026-08-28T04:04:17.606480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Biarity/Sieve"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:52:12.956080+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "781ab821147d84285b7c50d91ecdd54610b2bb6318252d4c8ca0731a0dfba49b", "fetched_at": "2026-08-28T04:04:17.606480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Biarity/Sieve"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:52:12.956080+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "781ab821147d84285b7c50d91ecdd54610b2bb6318252d4c8ca0731a0dfba49b", "fetched_at": "2026-08-28T04:04:17.606480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Biarity/Sieve"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3140, "days_push": 828, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 23, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}