{"adoption": {"forks": 698, "observed_at": "2026-08-28T04:08:11.145606+00:00", "stars": 3588}, "canonical_url": "https://ross.abutalabs.com/products/topshelf", "card": {"archived": true, "artifact_type": "framework", "description": "An easy service hosting framework for building Windows services using .NET", "domain": ["windows", "backend", "developer-tools"], "enriched": true, "function": ["deployment", "cli", "developer-tools"], "health_score": 10, "homepage": "http://topshelf-project.com/", "language": "C#", "license": "Apache-2.0", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["Topshelf/Topshelf"], "name": "Topshelf/Topshelf", "platform": ["windows", "dotnet", "cli"], "pushed_at": "2021-10-24T12:27:54+00:00", "repo": "Topshelf/Topshelf", "stars": 3588, "tags": ["windows-services", "service-hosting", "console-app", "service-installer", "dotnet-framework", "automation"], "topics": [], "urls": [], "use_cases": ["build a windows service in .net without boilerplate", "debug a service as a console application", "install a console app as a windows service", "deploy .net services with azure devops", "simplify windows service hosting framework"], "what_it_is": "Topshelf is a .NET framework for hosting Windows services, letting developers build services as simple console applications that can later be installed as Windows services. It simplifies service creation, debugging, and installation via NuGet.", "when_to_avoid": ["you target Linux or cross-platform services (use systemd or worker services instead)", "you need a modern .NET Core/.NET 5+ service model", "the project needs active development - last release was 2021"], "when_to_choose": ["you are building Windows services on .NET Framework and want easy install/debug workflow", "you prefer developing services as console apps for easier testing"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/topshelf", "repo": "Topshelf/Topshelf", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.145606+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:33:53.264730+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48ba266630f6057ad918040d17b922dc7c68bf92ec6b70104c5ab6c3d75caa02", "fetched_at": "2026-08-28T04:08:11.145606+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Topshelf/Topshelf"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.145606+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:33:53.264730+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48ba266630f6057ad918040d17b922dc7c68bf92ec6b70104c5ab6c3d75caa02", "fetched_at": "2026-08-28T04:08:11.145606+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Topshelf/Topshelf"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:33:53.264730+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48ba266630f6057ad918040d17b922dc7c68bf92ec6b70104c5ab6c3d75caa02", "fetched_at": "2026-08-28T04:08:11.145606+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Topshelf/Topshelf"}], "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:08:11.145606+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.145606+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.145606+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:33:53.264730+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48ba266630f6057ad918040d17b922dc7c68bf92ec6b70104c5ab6c3d75caa02", "fetched_at": "2026-08-28T04:08:11.145606+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Topshelf/Topshelf"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.145606+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.145606+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:33:53.264730+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48ba266630f6057ad918040d17b922dc7c68bf92ec6b70104c5ab6c3d75caa02", "fetched_at": "2026-08-28T04:08:11.145606+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Topshelf/Topshelf"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.145606+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.145606+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.145606+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:33:53.264730+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48ba266630f6057ad918040d17b922dc7c68bf92ec6b70104c5ab6c3d75caa02", "fetched_at": "2026-08-28T04:08:11.145606+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Topshelf/Topshelf"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.145606+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:11.145606+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:33:53.264730+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48ba266630f6057ad918040d17b922dc7c68bf92ec6b70104c5ab6c3d75caa02", "fetched_at": "2026-08-28T04:08:11.145606+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Topshelf/Topshelf"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:33:53.264730+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48ba266630f6057ad918040d17b922dc7c68bf92ec6b70104c5ab6c3d75caa02", "fetched_at": "2026-08-28T04:08:11.145606+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Topshelf/Topshelf"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:33:53.264730+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48ba266630f6057ad918040d17b922dc7c68bf92ec6b70104c5ab6c3d75caa02", "fetched_at": "2026-08-28T04:08:11.145606+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Topshelf/Topshelf"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:33:53.264730+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "48ba266630f6057ad918040d17b922dc7c68bf92ec6b70104c5ab6c3d75caa02", "fetched_at": "2026-08-28T04:08:11.145606+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Topshelf/Topshelf"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases", "archived"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 5892, "days_push": 1774, "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}}