> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hanko.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Welcome to the Hanko documentation

> Learn how to integrate Hanko to securely and seamlessly onboard and authenticate your users.

## What is Hanko?

Hanko is a fully open-source authentication and user management system built around a flexible API. It supports multiple authentication methods, including passwords, passkeys, two-factor authentication (2FA), single sign-on (SSO), and Hanko Elements — a set of lightweight, framework-agnostic web components for fast integration into any website or application.

Hanko follows a privacy-first approach, focusing on data minimalism and phishing-resistant authentication methods such as passkeys. You retain full control over your data and can move seamlessly between self-hosted deployments and Hanko Cloud at any time.

<img className="block dark:hidden" src="https://mintcdn.com/hanko/e4mTIlwKGzNDyf6P/images/hero-light.svg?fit=max&auto=format&n=e4mTIlwKGzNDyf6P&q=85&s=f7638b23a30b0f643a81a2975b16f44a" alt="Hero Light" style={{ borderRadius: "1rem" }} width="1200" height="628" data-path="images/hero-light.svg" />

<img className="hidden dark:block" src="https://mintcdn.com/hanko/e4mTIlwKGzNDyf6P/images/hero-dark.svg?fit=max&auto=format&n=e4mTIlwKGzNDyf6P&q=85&s=837642460b62fd8ae30e4e15070625a1" alt="Hero Light" style={{ borderRadius: "1rem" }} width="1200" height="628" data-path="images/hero-dark.svg" />

<Tip>
  Please note that Hanko is a complete authentication solution. If you only want to add passkeys to your existing user base, check out [Passkey API](/passkey-api/introduction).
</Tip>

## Hanko quickstart guides

Integrate Hanko using a quickstart guide for your favorite frameworks:

<CardGroup cols={2}>
  <Card
    title="Next.js"
    icon={
  <svg
    xmlns="http://www.w3.org/2000/svg"
    className="icon icon-tabler icon-tabler-brand-nextjs"
    width="30"
    height="30"
    viewBox="0 0 30 30"
    strokeWidth="2"
    stroke="#5465FF"
    fill="none"
    strokeLinecap="round"
    strokeLinejoin="round"
  >
    <path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
    <path d="M9 15v-6l7.745 10.65a9 9 0 1 1 2.255 -1.993"></path>
    <path d="M15 12v-3"></path>
  </svg>
}
    href="/quickstarts/fullstack/next"
  >
    Add authentication to your Next app quickly and easily with Hanko.
  </Card>

  <Card
    title="React"
    icon={
  <svg
    xmlns="http://www.w3.org/2000/svg"
    className="icon icon-tabler icon-tabler-brand-react"
    width="30"
    height="30"
    viewBox="0 0 30 30"
    strokeWidth="2"
    stroke="#5465FF"
    fill="none"
    strokeLinecap="round"
    strokeLinejoin="round"
  >
    <path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
    <path d="M6.306 8.711c-2.602 .723 -4.306 1.926 -4.306 3.289c0 2.21 4.477 4 10 4c.773 0 1.526 -.035 2.248 -.102"></path>
    <path d="M17.692 15.289c2.603 -.722 4.308 -1.926 4.308 -3.289c0 -2.21 -4.477 -4 -10 -4c-.773 0 -1.526 .035 -2.25 .102"></path>
    <path d="M6.305 15.287c-.676 2.615 -.485 4.693 .695 5.373c1.913 1.105 5.703 -1.877 8.464 -6.66c.387 -.67 .733 -1.339 1.036 -2"></path>
    <path d="M17.694 8.716c.677 -2.616 .487 -4.696 -.694 -5.376c-1.913 -1.105 -5.703 1.877 -8.464 6.66c-.387 .67 -.733 1.34 -1.037 2"></path>
    <path d="M12 5.424c-1.925 -1.892 -3.82 -2.766 -5 -2.084c-1.913 1.104 -1.226 5.877 1.536 10.66c.386 .67 .793 1.304 1.212 1.896"></path>
    <path d="M12 18.574c1.926 1.893 3.821 2.768 5 2.086c1.913 -1.104 1.226 -5.877 -1.536 -10.66c-.375 -.65 -.78 -1.283 -1.212 -1.897"></path>
    <path d="M11.5 12.866a1 1 0 1 0 1 -1.732a1 1 0 0 0 -1 1.732z"></path>
  </svg>
}
    href="/quickstarts/frontend/react"
  >
    Make your react application secure by adding Hanko authentication.
  </Card>

  <Card
    title="Nuxt"
    icon={
  <svg
    xmlns="http://www.w3.org/2000/svg"
    className="icon icon-tabler icon-tabler-brand-nuxt"
    width="30"
    height="30"
    viewBox="0 0 30 30"
    strokeWidth="2"
    stroke="#5465FF"
    fill="none"
    strokeLinecap="round"
    strokeLinejoin="round"
  >
    <path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
    <path d="M12.146 8.583l-1.3 -2.09a1.046 1.046 0 0 0 -1.786 .017l-5.91 9.908a1.046 1.046 0 0 0 .897 1.582h3.913"></path>
    <path d="M20.043 18c.743 0 1.201 -.843 .82 -1.505l-4.044 -7.013a.936 .936 0 0 0 -1.638 0l-4.043 7.013c-.382 .662 .076 1.505 .819 1.505h8.086z"></path>
  </svg>
}
    href="/quickstarts/fullstack/nuxt"
  >
    Get started with adding secure and hassle-free authentication to your Nuxt app.
  </Card>

  <Card
    title="Svelte"
    icon={
  <svg
    xmlns="http://www.w3.org/2000/svg"
    className="icon icon-tabler icon-tabler-brand-svelte"
    width="30"
    height="30"
    viewBox="0 0 30 30"
    strokeWidth="2"
    stroke="#5465FF"
    fill="none"
    strokeLinecap="round"
    strokeLinejoin="round"
  >
    <path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
    <path d="M15 8l-5 3l.821 -.495c1.86 -1.15 4.412 -.49 5.574 1.352a3.91 3.91 0 0 1 -1.264 5.42l-5.053 3.126c-1.86 1.151 -4.312 .591 -5.474 -1.251a3.91 3.91 0 0 1 1.263 -5.42l.26 -.16"></path>
    <path d="M8 17l5 -3l-.822 .496c-1.86 1.151 -4.411 .491 -5.574 -1.351a3.91 3.91 0 0 1 1.264 -5.42l5.054 -3.127c1.86 -1.15 4.311 -.59 5.474 1.252a3.91 3.91 0 0 1 -1.264 5.42l-.26 .16"></path>
  </svg>
}
    href="/quickstarts/frontend/svelte"
  >
    Add Hanko authentication to your Svelte app.
  </Card>
</CardGroup>

[Discover all guides >>](/quickstarts/overview)
