{"adoption": {"forks": 1992, "observed_at": "2026-08-28T04:09:48.186252+00:00", "stars": 6734}, "canonical_url": "https://ross.abutalabs.com/products/dotnet-starter-kit", "card": {"archived": false, "artifact_type": "framework", "description": "Production Grade Cloud-Ready .NET 10 Starter Kit (Web API + React Client) with Multitenancy Support, and Clean/Modular Architecture that saves roughly 200+ Development Hours! All Batteries Included.", "domain": ["web-development", "backend", "frontend", "developer-tools", "self-hosted", "cloud-computing", "apis", "security"], "enriched": true, "function": ["auth", "authorization", "web-framework", "api-framework", "orm", "caching", "message-queue", "webhook", "middleware", "rate-limiting", "monitoring", "tracing", "logging", "feature-flags", "file-upload", "chat-interface", "scheduling", "developer-tools", "cli", "infrastructure-as-code", "deployment", "self-hosted"], "health_score": 97, "homepage": "https://fullstackhero.net/", "language": "C#", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["fullstackhero/dotnet-starter-kit"], "name": "fullstackhero/dotnet-starter-kit", "platform": ["dotnet", "cloud", "cross-platform", "cli", "self-hosted"], "pushed_at": "2026-08-08T03:24:38+00:00", "repo": "fullstackhero/dotnet-starter-kit", "stars": 6734, "tags": ["starter-kit", "boilerplate", "clean-architecture", "vertical-slice-architecture", "modular-monolith", "multitenancy", "saas", "dotnet-10", "react-19", "aspire", "hangfire", "signalr", "terraform", "template", "scaffolding", "devops", "automation", "docker", "react", "postgres", "web-server"], "topics": ["clean-architecture", "dotnet", "webapi", "multitenancy", "boilerplate", "template", "fullstackhero", "codewithmukesh", "clean-architechture", "dotnet8", "starter-kit", "vertical-slice-architecture", "modular-monolith", "aws", "blazor", "docker", "terraform"], "urls": [], "use_cases": ["bootstrap a multi-tenant SaaS in .NET", "scaffold a clean architecture web API with React frontend", "starter kit with auth and multitenancy included", "learn vertical slice architecture in ASP.NET Core", "production-ready .NET template with Docker and AWS deployment", "add billing, webhooks, and auditing to a new SaaS app", "modular monolith template with EF Core and PostgreSQL"], "what_it_is": "A production-grade .NET 10 starter kit template combining a modular-monolith Web API (vertical slice architecture) with two React 19 front-end apps, scaffolded via the fsh CLI. It ships pre-wired modules for identity, multitenancy, auditing, files, chat, notifications, webhooks, and billing, plus cross-cutting concerns like caching, background jobs, observability, and rate limiting.", "when_to_avoid": ["you need a microservices architecture rather than a modular monolith", "you want a minimal, unopinionated template without pre-selected infrastructure like PostgreSQL, Valkey, and MinIO", "your stack is not .NET/C# with React", "you need a non-SaaS single-tenant app and would have to strip out tenancy and billing modules"], "when_to_choose": ["you are starting a new multi-tenant SaaS on .NET and want auth, tenancy, billing, and observability pre-wired", "you want full source ownership with no hidden NuGet runtime or vendor lock-in", "you want an opinionated, tested reference for vertical slice / modular monolith architecture", "you want one-command local orchestration (Aspire) and Terraform-based AWS deployment"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/dotnet-starter-kit", "repo": "fullstackhero/dotnet-starter-kit", "role": "main", "score": 83}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.186252+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:42:47.985710+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "855bd877967f13db1d4aa70699a650562b8b4f9fbb3a24d7f9180905be65b514", "fetched_at": "2026-08-28T04:09:48.186252+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fullstackhero/dotnet-starter-kit"}, {"content_hash": "38cb7b5edd463149b55af42e06700b9742e2e291adda3d913dc9cf7117781f71", "fetched_at": "2026-08-29T08:38:53.556974+00:00", "kind": "homepage", "missing": false, "url": "https://fullstackhero.net/"}, {"content_hash": "57ef85b565326910a18bb3ad8b9bb553cece5e95659a66eeb52c592db71329ae", "fetched_at": "2026-08-29T08:38:53.573873+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs"}, {"content_hash": "c5c3e219080965314568333f299a991b8ab39457ad901895d8b42e89e110042c", "fetched_at": "2026-08-29T08:38:53.575801+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/modules"}, {"content_hash": "5238aefc6ceb43ff85af9dcbc7e8db53fecdfaeec8e712cfa324297594d81436", "fetched_at": "2026-08-29T08:38:53.577586+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/guides"}, {"content_hash": "d965281cd3a65644a6e9564a76324ffa2a1387c6e80611f9630931756a7a35d5", "fetched_at": "2026-08-29T08:38:53.579417+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/getting-started/quick-start"}, {"content_hash": "1ccd67ed4b763c2751c7f62e3d59079262bdfb003b7256c2e75d5a0fddf60f89", "fetched_at": "2026-08-29T08:38:53.582094+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/security"}, {"content_hash": "0376281925c6fb5a90b2e18e7a7a29fe1d4d36eb81068b2396cdc6d8bbc97059", "fetched_at": "2026-08-29T08:38:53.584337+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/cross-cutting-concerns"}, {"content_hash": "4d7809b3c56ff402d17386c455d2d63557da72140b1ca96ccae3e58a0f2a50ee", "fetched_at": "2026-08-29T08:38:53.586487+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/architecture"}, {"content_hash": "3bb33af9e1b1ed26c98f7f0380ae2c2b03c85b05c766e15682665f3047e3e149", "fetched_at": "2026-08-29T08:38:53.588118+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/deployment"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.186252+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:42:47.985710+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "855bd877967f13db1d4aa70699a650562b8b4f9fbb3a24d7f9180905be65b514", "fetched_at": "2026-08-28T04:09:48.186252+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fullstackhero/dotnet-starter-kit"}, {"content_hash": "38cb7b5edd463149b55af42e06700b9742e2e291adda3d913dc9cf7117781f71", "fetched_at": "2026-08-29T08:38:53.556974+00:00", "kind": "homepage", "missing": false, "url": "https://fullstackhero.net/"}, {"content_hash": "57ef85b565326910a18bb3ad8b9bb553cece5e95659a66eeb52c592db71329ae", "fetched_at": "2026-08-29T08:38:53.573873+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs"}, {"content_hash": "c5c3e219080965314568333f299a991b8ab39457ad901895d8b42e89e110042c", "fetched_at": "2026-08-29T08:38:53.575801+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/modules"}, {"content_hash": "5238aefc6ceb43ff85af9dcbc7e8db53fecdfaeec8e712cfa324297594d81436", "fetched_at": "2026-08-29T08:38:53.577586+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/guides"}, {"content_hash": "d965281cd3a65644a6e9564a76324ffa2a1387c6e80611f9630931756a7a35d5", "fetched_at": "2026-08-29T08:38:53.579417+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/getting-started/quick-start"}, {"content_hash": "1ccd67ed4b763c2751c7f62e3d59079262bdfb003b7256c2e75d5a0fddf60f89", "fetched_at": "2026-08-29T08:38:53.582094+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/security"}, {"content_hash": "0376281925c6fb5a90b2e18e7a7a29fe1d4d36eb81068b2396cdc6d8bbc97059", "fetched_at": "2026-08-29T08:38:53.584337+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/cross-cutting-concerns"}, {"content_hash": "4d7809b3c56ff402d17386c455d2d63557da72140b1ca96ccae3e58a0f2a50ee", "fetched_at": "2026-08-29T08:38:53.586487+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/architecture"}, {"content_hash": "3bb33af9e1b1ed26c98f7f0380ae2c2b03c85b05c766e15682665f3047e3e149", "fetched_at": "2026-08-29T08:38:53.588118+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/deployment"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:42:47.985710+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "855bd877967f13db1d4aa70699a650562b8b4f9fbb3a24d7f9180905be65b514", "fetched_at": "2026-08-28T04:09:48.186252+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fullstackhero/dotnet-starter-kit"}, {"content_hash": "38cb7b5edd463149b55af42e06700b9742e2e291adda3d913dc9cf7117781f71", "fetched_at": "2026-08-29T08:38:53.556974+00:00", "kind": "homepage", "missing": false, "url": "https://fullstackhero.net/"}, {"content_hash": "57ef85b565326910a18bb3ad8b9bb553cece5e95659a66eeb52c592db71329ae", "fetched_at": "2026-08-29T08:38:53.573873+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs"}, {"content_hash": "c5c3e219080965314568333f299a991b8ab39457ad901895d8b42e89e110042c", "fetched_at": "2026-08-29T08:38:53.575801+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/modules"}, {"content_hash": "5238aefc6ceb43ff85af9dcbc7e8db53fecdfaeec8e712cfa324297594d81436", "fetched_at": "2026-08-29T08:38:53.577586+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/guides"}, {"content_hash": "d965281cd3a65644a6e9564a76324ffa2a1387c6e80611f9630931756a7a35d5", "fetched_at": "2026-08-29T08:38:53.579417+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/getting-started/quick-start"}, {"content_hash": "1ccd67ed4b763c2751c7f62e3d59079262bdfb003b7256c2e75d5a0fddf60f89", "fetched_at": "2026-08-29T08:38:53.582094+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/security"}, {"content_hash": "0376281925c6fb5a90b2e18e7a7a29fe1d4d36eb81068b2396cdc6d8bbc97059", "fetched_at": "2026-08-29T08:38:53.584337+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/cross-cutting-concerns"}, {"content_hash": "4d7809b3c56ff402d17386c455d2d63557da72140b1ca96ccae3e58a0f2a50ee", "fetched_at": "2026-08-29T08:38:53.586487+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/architecture"}, {"content_hash": "3bb33af9e1b1ed26c98f7f0380ae2c2b03c85b05c766e15682665f3047e3e149", "fetched_at": "2026-08-29T08:38:53.588118+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/deployment"}], "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:09:48.186252+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.186252+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.186252+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:42:47.985710+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "855bd877967f13db1d4aa70699a650562b8b4f9fbb3a24d7f9180905be65b514", "fetched_at": "2026-08-28T04:09:48.186252+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fullstackhero/dotnet-starter-kit"}, {"content_hash": "38cb7b5edd463149b55af42e06700b9742e2e291adda3d913dc9cf7117781f71", "fetched_at": "2026-08-29T08:38:53.556974+00:00", "kind": "homepage", "missing": false, "url": "https://fullstackhero.net/"}, {"content_hash": "57ef85b565326910a18bb3ad8b9bb553cece5e95659a66eeb52c592db71329ae", "fetched_at": "2026-08-29T08:38:53.573873+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs"}, {"content_hash": "c5c3e219080965314568333f299a991b8ab39457ad901895d8b42e89e110042c", "fetched_at": "2026-08-29T08:38:53.575801+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/modules"}, {"content_hash": "5238aefc6ceb43ff85af9dcbc7e8db53fecdfaeec8e712cfa324297594d81436", "fetched_at": "2026-08-29T08:38:53.577586+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/guides"}, {"content_hash": "d965281cd3a65644a6e9564a76324ffa2a1387c6e80611f9630931756a7a35d5", "fetched_at": "2026-08-29T08:38:53.579417+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/getting-started/quick-start"}, {"content_hash": "1ccd67ed4b763c2751c7f62e3d59079262bdfb003b7256c2e75d5a0fddf60f89", "fetched_at": "2026-08-29T08:38:53.582094+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/security"}, {"content_hash": "0376281925c6fb5a90b2e18e7a7a29fe1d4d36eb81068b2396cdc6d8bbc97059", "fetched_at": "2026-08-29T08:38:53.584337+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/cross-cutting-concerns"}, {"content_hash": "4d7809b3c56ff402d17386c455d2d63557da72140b1ca96ccae3e58a0f2a50ee", "fetched_at": "2026-08-29T08:38:53.586487+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/architecture"}, {"content_hash": "3bb33af9e1b1ed26c98f7f0380ae2c2b03c85b05c766e15682665f3047e3e149", "fetched_at": "2026-08-29T08:38:53.588118+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/deployment"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.186252+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.186252+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:42:47.985710+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "855bd877967f13db1d4aa70699a650562b8b4f9fbb3a24d7f9180905be65b514", "fetched_at": "2026-08-28T04:09:48.186252+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fullstackhero/dotnet-starter-kit"}, {"content_hash": "38cb7b5edd463149b55af42e06700b9742e2e291adda3d913dc9cf7117781f71", "fetched_at": "2026-08-29T08:38:53.556974+00:00", "kind": "homepage", "missing": false, "url": "https://fullstackhero.net/"}, {"content_hash": "57ef85b565326910a18bb3ad8b9bb553cece5e95659a66eeb52c592db71329ae", "fetched_at": "2026-08-29T08:38:53.573873+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs"}, {"content_hash": "c5c3e219080965314568333f299a991b8ab39457ad901895d8b42e89e110042c", "fetched_at": "2026-08-29T08:38:53.575801+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/modules"}, {"content_hash": "5238aefc6ceb43ff85af9dcbc7e8db53fecdfaeec8e712cfa324297594d81436", "fetched_at": "2026-08-29T08:38:53.577586+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/guides"}, {"content_hash": "d965281cd3a65644a6e9564a76324ffa2a1387c6e80611f9630931756a7a35d5", "fetched_at": "2026-08-29T08:38:53.579417+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/getting-started/quick-start"}, {"content_hash": "1ccd67ed4b763c2751c7f62e3d59079262bdfb003b7256c2e75d5a0fddf60f89", "fetched_at": "2026-08-29T08:38:53.582094+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/security"}, {"content_hash": "0376281925c6fb5a90b2e18e7a7a29fe1d4d36eb81068b2396cdc6d8bbc97059", "fetched_at": "2026-08-29T08:38:53.584337+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/cross-cutting-concerns"}, {"content_hash": "4d7809b3c56ff402d17386c455d2d63557da72140b1ca96ccae3e58a0f2a50ee", "fetched_at": "2026-08-29T08:38:53.586487+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/architecture"}, {"content_hash": "3bb33af9e1b1ed26c98f7f0380ae2c2b03c85b05c766e15682665f3047e3e149", "fetched_at": "2026-08-29T08:38:53.588118+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/deployment"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.186252+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.186252+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.186252+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:42:47.985710+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "855bd877967f13db1d4aa70699a650562b8b4f9fbb3a24d7f9180905be65b514", "fetched_at": "2026-08-28T04:09:48.186252+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fullstackhero/dotnet-starter-kit"}, {"content_hash": "38cb7b5edd463149b55af42e06700b9742e2e291adda3d913dc9cf7117781f71", "fetched_at": "2026-08-29T08:38:53.556974+00:00", "kind": "homepage", "missing": false, "url": "https://fullstackhero.net/"}, {"content_hash": "57ef85b565326910a18bb3ad8b9bb553cece5e95659a66eeb52c592db71329ae", "fetched_at": "2026-08-29T08:38:53.573873+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs"}, {"content_hash": "c5c3e219080965314568333f299a991b8ab39457ad901895d8b42e89e110042c", "fetched_at": "2026-08-29T08:38:53.575801+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/modules"}, {"content_hash": "5238aefc6ceb43ff85af9dcbc7e8db53fecdfaeec8e712cfa324297594d81436", "fetched_at": "2026-08-29T08:38:53.577586+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/guides"}, {"content_hash": "d965281cd3a65644a6e9564a76324ffa2a1387c6e80611f9630931756a7a35d5", "fetched_at": "2026-08-29T08:38:53.579417+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/getting-started/quick-start"}, {"content_hash": "1ccd67ed4b763c2751c7f62e3d59079262bdfb003b7256c2e75d5a0fddf60f89", "fetched_at": "2026-08-29T08:38:53.582094+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/security"}, {"content_hash": "0376281925c6fb5a90b2e18e7a7a29fe1d4d36eb81068b2396cdc6d8bbc97059", "fetched_at": "2026-08-29T08:38:53.584337+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/cross-cutting-concerns"}, {"content_hash": "4d7809b3c56ff402d17386c455d2d63557da72140b1ca96ccae3e58a0f2a50ee", "fetched_at": "2026-08-29T08:38:53.586487+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/architecture"}, {"content_hash": "3bb33af9e1b1ed26c98f7f0380ae2c2b03c85b05c766e15682665f3047e3e149", "fetched_at": "2026-08-29T08:38:53.588118+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/deployment"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.186252+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.186252+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:42:47.985710+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "855bd877967f13db1d4aa70699a650562b8b4f9fbb3a24d7f9180905be65b514", "fetched_at": "2026-08-28T04:09:48.186252+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fullstackhero/dotnet-starter-kit"}, {"content_hash": "38cb7b5edd463149b55af42e06700b9742e2e291adda3d913dc9cf7117781f71", "fetched_at": "2026-08-29T08:38:53.556974+00:00", "kind": "homepage", "missing": false, "url": "https://fullstackhero.net/"}, {"content_hash": "57ef85b565326910a18bb3ad8b9bb553cece5e95659a66eeb52c592db71329ae", "fetched_at": "2026-08-29T08:38:53.573873+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs"}, {"content_hash": "c5c3e219080965314568333f299a991b8ab39457ad901895d8b42e89e110042c", "fetched_at": "2026-08-29T08:38:53.575801+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/modules"}, {"content_hash": "5238aefc6ceb43ff85af9dcbc7e8db53fecdfaeec8e712cfa324297594d81436", "fetched_at": "2026-08-29T08:38:53.577586+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/guides"}, {"content_hash": "d965281cd3a65644a6e9564a76324ffa2a1387c6e80611f9630931756a7a35d5", "fetched_at": "2026-08-29T08:38:53.579417+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/getting-started/quick-start"}, {"content_hash": "1ccd67ed4b763c2751c7f62e3d59079262bdfb003b7256c2e75d5a0fddf60f89", "fetched_at": "2026-08-29T08:38:53.582094+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/security"}, {"content_hash": "0376281925c6fb5a90b2e18e7a7a29fe1d4d36eb81068b2396cdc6d8bbc97059", "fetched_at": "2026-08-29T08:38:53.584337+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/cross-cutting-concerns"}, {"content_hash": "4d7809b3c56ff402d17386c455d2d63557da72140b1ca96ccae3e58a0f2a50ee", "fetched_at": "2026-08-29T08:38:53.586487+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/architecture"}, {"content_hash": "3bb33af9e1b1ed26c98f7f0380ae2c2b03c85b05c766e15682665f3047e3e149", "fetched_at": "2026-08-29T08:38:53.588118+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/deployment"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:42:47.985710+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "855bd877967f13db1d4aa70699a650562b8b4f9fbb3a24d7f9180905be65b514", "fetched_at": "2026-08-28T04:09:48.186252+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fullstackhero/dotnet-starter-kit"}, {"content_hash": "38cb7b5edd463149b55af42e06700b9742e2e291adda3d913dc9cf7117781f71", "fetched_at": "2026-08-29T08:38:53.556974+00:00", "kind": "homepage", "missing": false, "url": "https://fullstackhero.net/"}, {"content_hash": "57ef85b565326910a18bb3ad8b9bb553cece5e95659a66eeb52c592db71329ae", "fetched_at": "2026-08-29T08:38:53.573873+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs"}, {"content_hash": "c5c3e219080965314568333f299a991b8ab39457ad901895d8b42e89e110042c", "fetched_at": "2026-08-29T08:38:53.575801+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/modules"}, {"content_hash": "5238aefc6ceb43ff85af9dcbc7e8db53fecdfaeec8e712cfa324297594d81436", "fetched_at": "2026-08-29T08:38:53.577586+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/guides"}, {"content_hash": "d965281cd3a65644a6e9564a76324ffa2a1387c6e80611f9630931756a7a35d5", "fetched_at": "2026-08-29T08:38:53.579417+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/getting-started/quick-start"}, {"content_hash": "1ccd67ed4b763c2751c7f62e3d59079262bdfb003b7256c2e75d5a0fddf60f89", "fetched_at": "2026-08-29T08:38:53.582094+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/security"}, {"content_hash": "0376281925c6fb5a90b2e18e7a7a29fe1d4d36eb81068b2396cdc6d8bbc97059", "fetched_at": "2026-08-29T08:38:53.584337+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/cross-cutting-concerns"}, {"content_hash": "4d7809b3c56ff402d17386c455d2d63557da72140b1ca96ccae3e58a0f2a50ee", "fetched_at": "2026-08-29T08:38:53.586487+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/architecture"}, {"content_hash": "3bb33af9e1b1ed26c98f7f0380ae2c2b03c85b05c766e15682665f3047e3e149", "fetched_at": "2026-08-29T08:38:53.588118+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/deployment"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:42:47.985710+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "855bd877967f13db1d4aa70699a650562b8b4f9fbb3a24d7f9180905be65b514", "fetched_at": "2026-08-28T04:09:48.186252+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fullstackhero/dotnet-starter-kit"}, {"content_hash": "38cb7b5edd463149b55af42e06700b9742e2e291adda3d913dc9cf7117781f71", "fetched_at": "2026-08-29T08:38:53.556974+00:00", "kind": "homepage", "missing": false, "url": "https://fullstackhero.net/"}, {"content_hash": "57ef85b565326910a18bb3ad8b9bb553cece5e95659a66eeb52c592db71329ae", "fetched_at": "2026-08-29T08:38:53.573873+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs"}, {"content_hash": "c5c3e219080965314568333f299a991b8ab39457ad901895d8b42e89e110042c", "fetched_at": "2026-08-29T08:38:53.575801+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/modules"}, {"content_hash": "5238aefc6ceb43ff85af9dcbc7e8db53fecdfaeec8e712cfa324297594d81436", "fetched_at": "2026-08-29T08:38:53.577586+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/guides"}, {"content_hash": "d965281cd3a65644a6e9564a76324ffa2a1387c6e80611f9630931756a7a35d5", "fetched_at": "2026-08-29T08:38:53.579417+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/getting-started/quick-start"}, {"content_hash": "1ccd67ed4b763c2751c7f62e3d59079262bdfb003b7256c2e75d5a0fddf60f89", "fetched_at": "2026-08-29T08:38:53.582094+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/security"}, {"content_hash": "0376281925c6fb5a90b2e18e7a7a29fe1d4d36eb81068b2396cdc6d8bbc97059", "fetched_at": "2026-08-29T08:38:53.584337+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/cross-cutting-concerns"}, {"content_hash": "4d7809b3c56ff402d17386c455d2d63557da72140b1ca96ccae3e58a0f2a50ee", "fetched_at": "2026-08-29T08:38:53.586487+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/architecture"}, {"content_hash": "3bb33af9e1b1ed26c98f7f0380ae2c2b03c85b05c766e15682665f3047e3e149", "fetched_at": "2026-08-29T08:38:53.588118+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/deployment"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:42:47.985710+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "855bd877967f13db1d4aa70699a650562b8b4f9fbb3a24d7f9180905be65b514", "fetched_at": "2026-08-28T04:09:48.186252+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fullstackhero/dotnet-starter-kit"}, {"content_hash": "38cb7b5edd463149b55af42e06700b9742e2e291adda3d913dc9cf7117781f71", "fetched_at": "2026-08-29T08:38:53.556974+00:00", "kind": "homepage", "missing": false, "url": "https://fullstackhero.net/"}, {"content_hash": "57ef85b565326910a18bb3ad8b9bb553cece5e95659a66eeb52c592db71329ae", "fetched_at": "2026-08-29T08:38:53.573873+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs"}, {"content_hash": "c5c3e219080965314568333f299a991b8ab39457ad901895d8b42e89e110042c", "fetched_at": "2026-08-29T08:38:53.575801+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/modules"}, {"content_hash": "5238aefc6ceb43ff85af9dcbc7e8db53fecdfaeec8e712cfa324297594d81436", "fetched_at": "2026-08-29T08:38:53.577586+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/guides"}, {"content_hash": "d965281cd3a65644a6e9564a76324ffa2a1387c6e80611f9630931756a7a35d5", "fetched_at": "2026-08-29T08:38:53.579417+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/getting-started/quick-start"}, {"content_hash": "1ccd67ed4b763c2751c7f62e3d59079262bdfb003b7256c2e75d5a0fddf60f89", "fetched_at": "2026-08-29T08:38:53.582094+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/security"}, {"content_hash": "0376281925c6fb5a90b2e18e7a7a29fe1d4d36eb81068b2396cdc6d8bbc97059", "fetched_at": "2026-08-29T08:38:53.584337+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/cross-cutting-concerns"}, {"content_hash": "4d7809b3c56ff402d17386c455d2d63557da72140b1ca96ccae3e58a0f2a50ee", "fetched_at": "2026-08-29T08:38:53.586487+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/architecture"}, {"content_hash": "3bb33af9e1b1ed26c98f7f0380ae2c2b03c85b05c766e15682665f3047e3e149", "fetched_at": "2026-08-29T08:38:53.588118+00:00", "kind": "site_page", "missing": false, "url": "https://fullstackhero.net/docs/deployment"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 96, "longevity": 100, "rhythm": 57}, "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": 1839, "days_push": 25, "days_rel": 75, "gap_med": 286.5, "n_releases_24m": 3}, "score": 83, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}