{"adoption": {"forks": 1014, "observed_at": "2026-08-28T04:10:26.776200+00:00", "stars": 9015}, "canonical_url": "https://ross.abutalabs.com/products/hanko", "card": {"archived": false, "artifact_type": "service", "description": "Modern authentication, on your terms. Open source alternative to Auth0, Clerk, WorkOS, Stytch.", "domain": ["security", "web-development", "apis", "self-hosted", "developer-tools"], "enriched": true, "function": ["auth", "authorization", "api-framework", "http-server", "middleware", "sdk", "webhook"], "health_score": 100, "homepage": "https://www.hanko.io", "language": "Go", "license": "NOASSERTION", "license_family": "other", "maturity": "active", "member_repos": ["teamhanko/hanko"], "name": "teamhanko/hanko", "platform": ["go", "self-hosted", "cross-platform", "cloud"], "pushed_at": "2026-08-25T16:50:35+00:00", "repo": "teamhanko/hanko", "stars": 9015, "tags": ["passkeys", "webauthn", "fido2", "passwordless", "mfa", "sso", "saml", "oauth", "user-management", "ciam", "jwt", "auth0-alternative", "web-components", "docker", "web-server"], "topics": ["passkeys", "webauthn", "fido2", "authentication", "passwordless", "jwt", "oauth", "sso", "user-management", "saml", "ciam", "2fa", "mfa", "iam"], "urls": [], "use_cases": ["add passkey login to my web app", "self-hosted alternative to Auth0 or Clerk", "implement passwordless authentication with WebAuthn", "add SAML SSO for enterprise customers", "add multi-factor authentication to my app", "migrate users from Firebase Auth with existing password hashes", "add social login with Google and GitHub", "manage user accounts and sessions for my SaaS"], "what_it_is": "Hanko is an open-source authentication and user management platform built in Go, offering passwords, passkeys (WebAuthn/FIDO2), MFA, OAuth social logins, and SAML SSO through an API-first architecture. It ships with framework-agnostic web components (Hanko Elements) and JS SDKs, and can be self-hosted or used via the managed Hanko Cloud service.", "when_to_avoid": ["you only need to add passkeys to an existing auth system (consider Hanko's separate Passkey API instead)", "you need fully featured organizations, roles, and permissions today (still on the roadmap)", "you require a certified compliance-heavy enterprise IAM like Keycloak with extensive protocol plugins", "you need native mobile SDKs for iOS, Android, React Native, or Flutter (not yet released)"], "when_to_choose": ["you want a self-hostable, API-first auth platform with no vendor lock-in", "you need phishing-resistant passkey/WebAuthn support out of the box", "you need passwords, passkeys, MFA, OAuth, and SAML SSO in one solution", "you want drop-in web components that work with React, Next.js, Angular, Vue, or Svelte", "you need to migrate existing users (e.g., from Firebase) including password hashes"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/hanko", "repo": "teamhanko/hanko", "role": "main", "score": 94}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:10:26.776200+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:24:20.748756+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "44aeac44ee583731d98d926ffccf5d6e9ab14a12fa8d54b63c576e79034de32f", "fetched_at": "2026-08-28T04:10:26.776200+00:00", "kind": "readme", "missing": false, "url": "https://github.com/teamhanko/hanko"}, {"content_hash": "eee363604336f9250167c6ba17b674f101451156ff1e19c4d649d91bba275028", "fetched_at": "2026-08-29T08:24:25.350640+00:00", "kind": "homepage", "missing": false, "url": "https://www.hanko.io"}, {"content_hash": "aafaf8754c6291a9d1437e63e545a48fe71dba0eb6fa668b0bab1cc4df257779", "fetched_at": "2026-08-29T08:24:25.366780+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/introduction"}, {"content_hash": "1fcd0b6ff6de4848f5abc54a473937f427c8c5c6c44454edcd753b593b7e7122", "fetched_at": "2026-08-29T08:24:25.368922+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/angular"}, {"content_hash": "9d2e9f16ea06eddd9bf7c36d11b50e6fb47266f920f33adbfa04ac9efc85edca", "fetched_at": "2026-08-29T08:24:25.371222+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/next"}, {"content_hash": "6d1d0dbb80162a33798fd6b8bc8b502b5267aaf92c211e4e6045f70ae75768a9", "fetched_at": "2026-08-29T08:24:25.373286+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/sveltekit"}, {"content_hash": "4daaa85104d491ed0c9c580377103371b395adfcc92545b531793e590cb7e04b", "fetched_at": "2026-08-29T08:24:25.375347+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/remix"}, {"content_hash": "ce59d5ef1cc6db8a6eddba4efd5055db6217e8215cd2c5211099981039a67612", "fetched_at": "2026-08-29T08:24:25.377380+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/react"}, {"content_hash": "b244e6ba4cdebae16534a3fd5acf7214a2f0aba9ddd51e951fedf5a5e92d6d88", "fetched_at": "2026-08-29T08:24:25.361629+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/pricing"}, {"content_hash": "fbe89e4b85b4e225aadf281f0fe9ca18c83fb7d3def053c4c0476dcd7c23c26e", "fetched_at": "2026-08-29T08:24:25.364153+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/changelog"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:10:26.776200+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:24:20.748756+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "44aeac44ee583731d98d926ffccf5d6e9ab14a12fa8d54b63c576e79034de32f", "fetched_at": "2026-08-28T04:10:26.776200+00:00", "kind": "readme", "missing": false, "url": "https://github.com/teamhanko/hanko"}, {"content_hash": "eee363604336f9250167c6ba17b674f101451156ff1e19c4d649d91bba275028", "fetched_at": "2026-08-29T08:24:25.350640+00:00", "kind": "homepage", "missing": false, "url": "https://www.hanko.io"}, {"content_hash": "aafaf8754c6291a9d1437e63e545a48fe71dba0eb6fa668b0bab1cc4df257779", "fetched_at": "2026-08-29T08:24:25.366780+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/introduction"}, {"content_hash": "1fcd0b6ff6de4848f5abc54a473937f427c8c5c6c44454edcd753b593b7e7122", "fetched_at": "2026-08-29T08:24:25.368922+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/angular"}, {"content_hash": "9d2e9f16ea06eddd9bf7c36d11b50e6fb47266f920f33adbfa04ac9efc85edca", "fetched_at": "2026-08-29T08:24:25.371222+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/next"}, {"content_hash": "6d1d0dbb80162a33798fd6b8bc8b502b5267aaf92c211e4e6045f70ae75768a9", "fetched_at": "2026-08-29T08:24:25.373286+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/sveltekit"}, {"content_hash": "4daaa85104d491ed0c9c580377103371b395adfcc92545b531793e590cb7e04b", "fetched_at": "2026-08-29T08:24:25.375347+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/remix"}, {"content_hash": "ce59d5ef1cc6db8a6eddba4efd5055db6217e8215cd2c5211099981039a67612", "fetched_at": "2026-08-29T08:24:25.377380+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/react"}, {"content_hash": "b244e6ba4cdebae16534a3fd5acf7214a2f0aba9ddd51e951fedf5a5e92d6d88", "fetched_at": "2026-08-29T08:24:25.361629+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/pricing"}, {"content_hash": "fbe89e4b85b4e225aadf281f0fe9ca18c83fb7d3def053c4c0476dcd7c23c26e", "fetched_at": "2026-08-29T08:24:25.364153+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/changelog"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:24:20.748756+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "44aeac44ee583731d98d926ffccf5d6e9ab14a12fa8d54b63c576e79034de32f", "fetched_at": "2026-08-28T04:10:26.776200+00:00", "kind": "readme", "missing": false, "url": "https://github.com/teamhanko/hanko"}, {"content_hash": "eee363604336f9250167c6ba17b674f101451156ff1e19c4d649d91bba275028", "fetched_at": "2026-08-29T08:24:25.350640+00:00", "kind": "homepage", "missing": false, "url": "https://www.hanko.io"}, {"content_hash": "aafaf8754c6291a9d1437e63e545a48fe71dba0eb6fa668b0bab1cc4df257779", "fetched_at": "2026-08-29T08:24:25.366780+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/introduction"}, {"content_hash": "1fcd0b6ff6de4848f5abc54a473937f427c8c5c6c44454edcd753b593b7e7122", "fetched_at": "2026-08-29T08:24:25.368922+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/angular"}, {"content_hash": "9d2e9f16ea06eddd9bf7c36d11b50e6fb47266f920f33adbfa04ac9efc85edca", "fetched_at": "2026-08-29T08:24:25.371222+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/next"}, {"content_hash": "6d1d0dbb80162a33798fd6b8bc8b502b5267aaf92c211e4e6045f70ae75768a9", "fetched_at": "2026-08-29T08:24:25.373286+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/sveltekit"}, {"content_hash": "4daaa85104d491ed0c9c580377103371b395adfcc92545b531793e590cb7e04b", "fetched_at": "2026-08-29T08:24:25.375347+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/remix"}, {"content_hash": "ce59d5ef1cc6db8a6eddba4efd5055db6217e8215cd2c5211099981039a67612", "fetched_at": "2026-08-29T08:24:25.377380+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/react"}, {"content_hash": "b244e6ba4cdebae16534a3fd5acf7214a2f0aba9ddd51e951fedf5a5e92d6d88", "fetched_at": "2026-08-29T08:24:25.361629+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/pricing"}, {"content_hash": "fbe89e4b85b4e225aadf281f0fe9ca18c83fb7d3def053c4c0476dcd7c23c26e", "fetched_at": "2026-08-29T08:24:25.364153+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/changelog"}], "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:10:26.776200+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:10:26.776200+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:10:26.776200+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:24:20.748756+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "44aeac44ee583731d98d926ffccf5d6e9ab14a12fa8d54b63c576e79034de32f", "fetched_at": "2026-08-28T04:10:26.776200+00:00", "kind": "readme", "missing": false, "url": "https://github.com/teamhanko/hanko"}, {"content_hash": "eee363604336f9250167c6ba17b674f101451156ff1e19c4d649d91bba275028", "fetched_at": "2026-08-29T08:24:25.350640+00:00", "kind": "homepage", "missing": false, "url": "https://www.hanko.io"}, {"content_hash": "aafaf8754c6291a9d1437e63e545a48fe71dba0eb6fa668b0bab1cc4df257779", "fetched_at": "2026-08-29T08:24:25.366780+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/introduction"}, {"content_hash": "1fcd0b6ff6de4848f5abc54a473937f427c8c5c6c44454edcd753b593b7e7122", "fetched_at": "2026-08-29T08:24:25.368922+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/angular"}, {"content_hash": "9d2e9f16ea06eddd9bf7c36d11b50e6fb47266f920f33adbfa04ac9efc85edca", "fetched_at": "2026-08-29T08:24:25.371222+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/next"}, {"content_hash": "6d1d0dbb80162a33798fd6b8bc8b502b5267aaf92c211e4e6045f70ae75768a9", "fetched_at": "2026-08-29T08:24:25.373286+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/sveltekit"}, {"content_hash": "4daaa85104d491ed0c9c580377103371b395adfcc92545b531793e590cb7e04b", "fetched_at": "2026-08-29T08:24:25.375347+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/remix"}, {"content_hash": "ce59d5ef1cc6db8a6eddba4efd5055db6217e8215cd2c5211099981039a67612", "fetched_at": "2026-08-29T08:24:25.377380+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/react"}, {"content_hash": "b244e6ba4cdebae16534a3fd5acf7214a2f0aba9ddd51e951fedf5a5e92d6d88", "fetched_at": "2026-08-29T08:24:25.361629+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/pricing"}, {"content_hash": "fbe89e4b85b4e225aadf281f0fe9ca18c83fb7d3def053c4c0476dcd7c23c26e", "fetched_at": "2026-08-29T08:24:25.364153+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/changelog"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:10:26.776200+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:10:26.776200+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:24:20.748756+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "44aeac44ee583731d98d926ffccf5d6e9ab14a12fa8d54b63c576e79034de32f", "fetched_at": "2026-08-28T04:10:26.776200+00:00", "kind": "readme", "missing": false, "url": "https://github.com/teamhanko/hanko"}, {"content_hash": "eee363604336f9250167c6ba17b674f101451156ff1e19c4d649d91bba275028", "fetched_at": "2026-08-29T08:24:25.350640+00:00", "kind": "homepage", "missing": false, "url": "https://www.hanko.io"}, {"content_hash": "aafaf8754c6291a9d1437e63e545a48fe71dba0eb6fa668b0bab1cc4df257779", "fetched_at": "2026-08-29T08:24:25.366780+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/introduction"}, {"content_hash": "1fcd0b6ff6de4848f5abc54a473937f427c8c5c6c44454edcd753b593b7e7122", "fetched_at": "2026-08-29T08:24:25.368922+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/angular"}, {"content_hash": "9d2e9f16ea06eddd9bf7c36d11b50e6fb47266f920f33adbfa04ac9efc85edca", "fetched_at": "2026-08-29T08:24:25.371222+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/next"}, {"content_hash": "6d1d0dbb80162a33798fd6b8bc8b502b5267aaf92c211e4e6045f70ae75768a9", "fetched_at": "2026-08-29T08:24:25.373286+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/sveltekit"}, {"content_hash": "4daaa85104d491ed0c9c580377103371b395adfcc92545b531793e590cb7e04b", "fetched_at": "2026-08-29T08:24:25.375347+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/remix"}, {"content_hash": "ce59d5ef1cc6db8a6eddba4efd5055db6217e8215cd2c5211099981039a67612", "fetched_at": "2026-08-29T08:24:25.377380+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/react"}, {"content_hash": "b244e6ba4cdebae16534a3fd5acf7214a2f0aba9ddd51e951fedf5a5e92d6d88", "fetched_at": "2026-08-29T08:24:25.361629+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/pricing"}, {"content_hash": "fbe89e4b85b4e225aadf281f0fe9ca18c83fb7d3def053c4c0476dcd7c23c26e", "fetched_at": "2026-08-29T08:24:25.364153+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/changelog"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:10:26.776200+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:10:26.776200+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:10:26.776200+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:24:20.748756+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "44aeac44ee583731d98d926ffccf5d6e9ab14a12fa8d54b63c576e79034de32f", "fetched_at": "2026-08-28T04:10:26.776200+00:00", "kind": "readme", "missing": false, "url": "https://github.com/teamhanko/hanko"}, {"content_hash": "eee363604336f9250167c6ba17b674f101451156ff1e19c4d649d91bba275028", "fetched_at": "2026-08-29T08:24:25.350640+00:00", "kind": "homepage", "missing": false, "url": "https://www.hanko.io"}, {"content_hash": "aafaf8754c6291a9d1437e63e545a48fe71dba0eb6fa668b0bab1cc4df257779", "fetched_at": "2026-08-29T08:24:25.366780+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/introduction"}, {"content_hash": "1fcd0b6ff6de4848f5abc54a473937f427c8c5c6c44454edcd753b593b7e7122", "fetched_at": "2026-08-29T08:24:25.368922+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/angular"}, {"content_hash": "9d2e9f16ea06eddd9bf7c36d11b50e6fb47266f920f33adbfa04ac9efc85edca", "fetched_at": "2026-08-29T08:24:25.371222+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/next"}, {"content_hash": "6d1d0dbb80162a33798fd6b8bc8b502b5267aaf92c211e4e6045f70ae75768a9", "fetched_at": "2026-08-29T08:24:25.373286+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/sveltekit"}, {"content_hash": "4daaa85104d491ed0c9c580377103371b395adfcc92545b531793e590cb7e04b", "fetched_at": "2026-08-29T08:24:25.375347+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/remix"}, {"content_hash": "ce59d5ef1cc6db8a6eddba4efd5055db6217e8215cd2c5211099981039a67612", "fetched_at": "2026-08-29T08:24:25.377380+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/react"}, {"content_hash": "b244e6ba4cdebae16534a3fd5acf7214a2f0aba9ddd51e951fedf5a5e92d6d88", "fetched_at": "2026-08-29T08:24:25.361629+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/pricing"}, {"content_hash": "fbe89e4b85b4e225aadf281f0fe9ca18c83fb7d3def053c4c0476dcd7c23c26e", "fetched_at": "2026-08-29T08:24:25.364153+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/changelog"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:10:26.776200+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:10:26.776200+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:24:20.748756+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "44aeac44ee583731d98d926ffccf5d6e9ab14a12fa8d54b63c576e79034de32f", "fetched_at": "2026-08-28T04:10:26.776200+00:00", "kind": "readme", "missing": false, "url": "https://github.com/teamhanko/hanko"}, {"content_hash": "eee363604336f9250167c6ba17b674f101451156ff1e19c4d649d91bba275028", "fetched_at": "2026-08-29T08:24:25.350640+00:00", "kind": "homepage", "missing": false, "url": "https://www.hanko.io"}, {"content_hash": "aafaf8754c6291a9d1437e63e545a48fe71dba0eb6fa668b0bab1cc4df257779", "fetched_at": "2026-08-29T08:24:25.366780+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/introduction"}, {"content_hash": "1fcd0b6ff6de4848f5abc54a473937f427c8c5c6c44454edcd753b593b7e7122", "fetched_at": "2026-08-29T08:24:25.368922+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/angular"}, {"content_hash": "9d2e9f16ea06eddd9bf7c36d11b50e6fb47266f920f33adbfa04ac9efc85edca", "fetched_at": "2026-08-29T08:24:25.371222+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/next"}, {"content_hash": "6d1d0dbb80162a33798fd6b8bc8b502b5267aaf92c211e4e6045f70ae75768a9", "fetched_at": "2026-08-29T08:24:25.373286+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/sveltekit"}, {"content_hash": "4daaa85104d491ed0c9c580377103371b395adfcc92545b531793e590cb7e04b", "fetched_at": "2026-08-29T08:24:25.375347+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/remix"}, {"content_hash": "ce59d5ef1cc6db8a6eddba4efd5055db6217e8215cd2c5211099981039a67612", "fetched_at": "2026-08-29T08:24:25.377380+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/react"}, {"content_hash": "b244e6ba4cdebae16534a3fd5acf7214a2f0aba9ddd51e951fedf5a5e92d6d88", "fetched_at": "2026-08-29T08:24:25.361629+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/pricing"}, {"content_hash": "fbe89e4b85b4e225aadf281f0fe9ca18c83fb7d3def053c4c0476dcd7c23c26e", "fetched_at": "2026-08-29T08:24:25.364153+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/changelog"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:24:20.748756+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "44aeac44ee583731d98d926ffccf5d6e9ab14a12fa8d54b63c576e79034de32f", "fetched_at": "2026-08-28T04:10:26.776200+00:00", "kind": "readme", "missing": false, "url": "https://github.com/teamhanko/hanko"}, {"content_hash": "eee363604336f9250167c6ba17b674f101451156ff1e19c4d649d91bba275028", "fetched_at": "2026-08-29T08:24:25.350640+00:00", "kind": "homepage", "missing": false, "url": "https://www.hanko.io"}, {"content_hash": "aafaf8754c6291a9d1437e63e545a48fe71dba0eb6fa668b0bab1cc4df257779", "fetched_at": "2026-08-29T08:24:25.366780+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/introduction"}, {"content_hash": "1fcd0b6ff6de4848f5abc54a473937f427c8c5c6c44454edcd753b593b7e7122", "fetched_at": "2026-08-29T08:24:25.368922+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/angular"}, {"content_hash": "9d2e9f16ea06eddd9bf7c36d11b50e6fb47266f920f33adbfa04ac9efc85edca", "fetched_at": "2026-08-29T08:24:25.371222+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/next"}, {"content_hash": "6d1d0dbb80162a33798fd6b8bc8b502b5267aaf92c211e4e6045f70ae75768a9", "fetched_at": "2026-08-29T08:24:25.373286+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/sveltekit"}, {"content_hash": "4daaa85104d491ed0c9c580377103371b395adfcc92545b531793e590cb7e04b", "fetched_at": "2026-08-29T08:24:25.375347+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/remix"}, {"content_hash": "ce59d5ef1cc6db8a6eddba4efd5055db6217e8215cd2c5211099981039a67612", "fetched_at": "2026-08-29T08:24:25.377380+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/react"}, {"content_hash": "b244e6ba4cdebae16534a3fd5acf7214a2f0aba9ddd51e951fedf5a5e92d6d88", "fetched_at": "2026-08-29T08:24:25.361629+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/pricing"}, {"content_hash": "fbe89e4b85b4e225aadf281f0fe9ca18c83fb7d3def053c4c0476dcd7c23c26e", "fetched_at": "2026-08-29T08:24:25.364153+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/changelog"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:24:20.748756+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "44aeac44ee583731d98d926ffccf5d6e9ab14a12fa8d54b63c576e79034de32f", "fetched_at": "2026-08-28T04:10:26.776200+00:00", "kind": "readme", "missing": false, "url": "https://github.com/teamhanko/hanko"}, {"content_hash": "eee363604336f9250167c6ba17b674f101451156ff1e19c4d649d91bba275028", "fetched_at": "2026-08-29T08:24:25.350640+00:00", "kind": "homepage", "missing": false, "url": "https://www.hanko.io"}, {"content_hash": "aafaf8754c6291a9d1437e63e545a48fe71dba0eb6fa668b0bab1cc4df257779", "fetched_at": "2026-08-29T08:24:25.366780+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/introduction"}, {"content_hash": "1fcd0b6ff6de4848f5abc54a473937f427c8c5c6c44454edcd753b593b7e7122", "fetched_at": "2026-08-29T08:24:25.368922+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/angular"}, {"content_hash": "9d2e9f16ea06eddd9bf7c36d11b50e6fb47266f920f33adbfa04ac9efc85edca", "fetched_at": "2026-08-29T08:24:25.371222+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/next"}, {"content_hash": "6d1d0dbb80162a33798fd6b8bc8b502b5267aaf92c211e4e6045f70ae75768a9", "fetched_at": "2026-08-29T08:24:25.373286+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/sveltekit"}, {"content_hash": "4daaa85104d491ed0c9c580377103371b395adfcc92545b531793e590cb7e04b", "fetched_at": "2026-08-29T08:24:25.375347+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/remix"}, {"content_hash": "ce59d5ef1cc6db8a6eddba4efd5055db6217e8215cd2c5211099981039a67612", "fetched_at": "2026-08-29T08:24:25.377380+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/react"}, {"content_hash": "b244e6ba4cdebae16534a3fd5acf7214a2f0aba9ddd51e951fedf5a5e92d6d88", "fetched_at": "2026-08-29T08:24:25.361629+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/pricing"}, {"content_hash": "fbe89e4b85b4e225aadf281f0fe9ca18c83fb7d3def053c4c0476dcd7c23c26e", "fetched_at": "2026-08-29T08:24:25.364153+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/changelog"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:24:20.748756+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "44aeac44ee583731d98d926ffccf5d6e9ab14a12fa8d54b63c576e79034de32f", "fetched_at": "2026-08-28T04:10:26.776200+00:00", "kind": "readme", "missing": false, "url": "https://github.com/teamhanko/hanko"}, {"content_hash": "eee363604336f9250167c6ba17b674f101451156ff1e19c4d649d91bba275028", "fetched_at": "2026-08-29T08:24:25.350640+00:00", "kind": "homepage", "missing": false, "url": "https://www.hanko.io"}, {"content_hash": "aafaf8754c6291a9d1437e63e545a48fe71dba0eb6fa668b0bab1cc4df257779", "fetched_at": "2026-08-29T08:24:25.366780+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/introduction"}, {"content_hash": "1fcd0b6ff6de4848f5abc54a473937f427c8c5c6c44454edcd753b593b7e7122", "fetched_at": "2026-08-29T08:24:25.368922+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/angular"}, {"content_hash": "9d2e9f16ea06eddd9bf7c36d11b50e6fb47266f920f33adbfa04ac9efc85edca", "fetched_at": "2026-08-29T08:24:25.371222+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/next"}, {"content_hash": "6d1d0dbb80162a33798fd6b8bc8b502b5267aaf92c211e4e6045f70ae75768a9", "fetched_at": "2026-08-29T08:24:25.373286+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/sveltekit"}, {"content_hash": "4daaa85104d491ed0c9c580377103371b395adfcc92545b531793e590cb7e04b", "fetched_at": "2026-08-29T08:24:25.375347+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/fullstack/remix"}, {"content_hash": "ce59d5ef1cc6db8a6eddba4efd5055db6217e8215cd2c5211099981039a67612", "fetched_at": "2026-08-29T08:24:25.377380+00:00", "kind": "site_page", "missing": false, "url": "https://docs.hanko.io/quickstarts/frontend/react"}, {"content_hash": "b244e6ba4cdebae16534a3fd5acf7214a2f0aba9ddd51e951fedf5a5e92d6d88", "fetched_at": "2026-08-29T08:24:25.361629+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/pricing"}, {"content_hash": "fbe89e4b85b4e225aadf281f0fe9ca18c83fb7d3def053c4c0476dcd7c23c26e", "fetched_at": "2026-08-29T08:24:25.364153+00:00", "kind": "site_page", "missing": false, "url": "https://www.hanko.io/changelog"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 83}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1633, "days_push": 8, "days_rel": 37, "gap_med": 35.0, "n_releases_24m": 17}, "score": 94, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}