PageSourceSearch

https://passkeys.dev/device-support/

html passkeys.dev collected 2026-09-24 09:02:02 UTC 52,521 bytes, 54 lines download raw bytes

1<!doctype html><html lang=en class=no-js><head>
1<script src=https://passkeys.dev/js/critical.bundle.25e465d95df88cc3e1eeed34003ded1e83a243e90d722e8cad076d8ff05a3727.js integrity="sha256-JeRl2V34jMPh7u00AD3tHoOiQ+kNci6MrQdtj/BaNyc=" crossorigin=anonymous></script>
1<meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=generator content="Hugo 0.158.0"><meta name=theme content="Hinode 3.28.1"><link rel=stylesheet href="/css/main.min.8374df418046a1419419748ffff93ee6c7736084780538d66ecd7293313a0282.css" integrity="sha256-g3TfQYBGoUGUGXSP//k+5sdzYIR4BTjWbs1ykzE6AoI=" crossorigin=anonymous><link rel=preload href=https://passkeys.dev/fonts/inter-v12-latin-regular.woff2 as=font type=font/woff2 crossorigin><meta name=robots content="index, follow"><meta name=googlebot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><meta name=bingbot content="index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1"><title>Device Support - passkeys.dev</title><meta name=description content="Detailed information about passkey support across devices and ecosystems"><link rel=canonical href=https://passkeys.dev/device-support/><meta property="og:locale" content="en_US"><meta property="og:type" content="article"><meta property="og:title" content="Device Support"><meta property="og:description" content="Detailed information about passkey support across devices and ecosystems"><meta property="og:url" content="https://passkeys.dev/device-support/"><meta property="og:site_name" content="passkeys.dev"><meta property="article:modified_time" content="2026-09-21T08:57:59-04:00"><meta property="og:image" content="https://passkeys.dev/img/logo1280x640.png"><meta property="og:image:alt" content="Device Support"><meta name=twitter:card content="summary_large_image"><meta name=twitter:title content="Device Support"><meta name=twitter:description content="Detailed information about passkey support across devices and ecosystems"><meta name=twitter:image content="https://passkeys.dev/img/logo1280x640.png"><meta name=twitter:image:alt content="Device Support">
1<script type=application/ld+json>{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://passkeys.dev/#/schema/organization/1","name":"passkeys.dev","url":"https://passkeys.dev/","sameAs":[null,"https://github.com/passkeydeveloper/passkeys.dev"],"logo":{"@type":"ImageObject","@id":"https://passkeys.dev/#/schema/image/1","url":"https://passkeys.dev/img/logo512x512.png","width":512,"height":512,"caption":"passkeys.dev"},"image":{"@id":"https://passkeys.dev/#/schema/image/1"}},{"@type":"WebSite","@id":"https://passkeys.dev/#/schema/website/1","url":"https://passkeys.dev/","name":"passkeys.dev","description":"A collection of resources and insights to help you deploy passkeys, including practical user experiences, device ecosystem support, frequently asked questions, and more.","publisher":{"@id":"https://passkeys.dev/#/schema/organization/1"}},{"@type":"WebPage","@id":"https://passkeys.dev/device-support/","url":"https://passkeys.dev/device-support/","name":"Device Support","description":"Detailed information about passkey support across devices and ecosystems","isPartOf":{"@id":"https://passkeys.dev/#/schema/website/1"},"about":{"@id":"https://passkeys.dev/#/schema/organization/1"},"dateModified":"2026-09-21T08:57:59CET","breadcrumb":{"@id":"https://passkeys.dev/device-support/#/schema/breadcrumb/1"},"primaryImageOfPage":{"@id":"https://passkeys.dev/device-support/#/schema/image/2"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https://passkeys.dev/device-support/"]}]},{"@type":"BreadcrumbList","@id":"https://passkeys.dev/device-support/#/schema/breadcrumb/1","name":"Breadcrumbs","itemListElement":[{"@type":"ListItem","position":1,"item":{"@type":"WebPage","@id":"https://passkeys.dev/","url":"https://passkeys.dev/","name":"Home"}},{"@type":"ListItem","position":2,"item":{"@id":"https://passkeys.dev/device-support/"}}]},{"@context":"https://schema.org","@graph":[{"@type":"ImageObject","@id":"https://passkeys.dev/device-support/#/schema/image/2","url":"https://passkeys.dev/img/logo1280x640.png","contentUrl":"https://passkeys.dev/img/logo1280x640.png","caption":"Device Support"}]}]}</script>
1<link rel=icon type=image/png sizes=16x16 href=https://passkeys.dev/img/favicon_hu_f85a8c6509cc859.png><link rel=icon type=image/png sizes=32x32 href=https://passkeys.dev/img/favicon_hu_ceefb22bce4993bf.png><link rel=icon type=image/png sizes=48x48 href=https://passkeys.dev/img/favicon_hu_68994e86d8442944.png><link rel=apple-touch-icon sizes=180x180 href=https://passkeys.dev/img/favicon_hu_447a4856c39d61a1.png></head><body class=navbar-fixed><div class="container-fluid fixed-top p-0"><nav class="navbar px-4 py-4 navbar-fs-6 navbar-md-fs bg-body navbar-fixed-top navbar-expand-md"><div class="container-xxl p-0"><div class="d-flex navbar-container"><div class="width-100 d-flex align-items-center width-md-auto"><a class=navbar-brand href=https://passkeys.dev/ aria-label=Home><div class=d-none-dark><img class="img-fluid m-auto" src=https://passkeys.dev/img/header-logo-light.svg height=30 width=180 alt=passkeys.dev></div><div class=d-none-light><img class="img-fluid m-auto" src=https://passkeys.dev/img/header-logo-dark.svg height=30 width=180 alt=passkeys.dev></div></a></div><div class="d-flex align-items-center"><button class="navbar-toggler main-nav-toggler collapsed p-0" type=button data-bs-toggle=collapse data-bs-target=#navbar-0-collapse aria-controls=navbar-0 aria-expanded=false aria-label="Toggle main navigation">
2<span class="toggler-icon top-bar emphasis"></span>
3<span class="toggler-icon middle-bar emphasis"></span>
4<span class="toggler-icon bottom-bar emphasis"></span></button></div></div><div class="navbar-collapse collapse" id=navbar-0-collapse><div class="d-flex flex-fill ms-md-3 mt-4 mt-md-0 me-md-3"><form class="search flex-fill position-relative me-auto"><input class="search-input form-control is-search" type=search placeholder="Search this site" aria-label="Search this site" autocomplete=off name=search-input><div class="search-suggestions shadow bg-body rounded d-none" data-no-results="No results for"></div></form></div><ul class="navbar-nav navbar-nav-scroll ms-auto"><li class=nav-item><a class=nav-link data-nav=main data-nav-main=docs href=https://passkeys.dev/docs/><span class=d-md-none>Docs</span>
5<span class="d-none d-md-block">Docs</span></a></li><li class=nav-item><a class="nav-link active" data-nav=main data-nav-main=device-support href=https://passkeys.dev/device-support/><span class="active d-md-none">Device Support</span>
6<span class="active d-none d-md-block">Device Support</span></a></li><li class=nav-item><a class=nav-link data-nav=main data-nav-main=tools href=https://tools.passkeys.dev target=_blank rel="noopener noreferrer nofollow"><span class=d-md-none>Tools</span>
7<span class="d-none d-md-block">Tools</span></a></li><li class=nav-item><a class=nav-link data-nav=main data-nav-main=about href=https://passkeys.dev/about/><span class=d-md-none>About</span>
8<span class="d-none d-md-block">About</span></a></li><li class="nav-link navbar-fs-6 navbar-md-fs d-flex mode-switch align-items-center" id=navbar-mode><input type=checkbox class="checkbox navbar-mode-selector" id=navbar-mode-checkbox aria-label="Toggle theme">
9<label class=label for=navbar-mode-checkbox><svg class="svg-inline--fa fas fa-sun fa-fw" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 576 512" overflow="visible"><use href="#fas-sun"/></svg>
10<svg class="svg-inline--fa fas fa-moon fa-fw" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-moon"/></svg><div class=ball></div></label></li><li class=nav-item><a class=nav-link aria-label=Discussions data-nav=main data-nav-main=discussions href=https://passkeys.dev/discuss target=_blank rel="noopener noreferrer nofollow"><svg class="svg-inline--fa fa fa-comments fa-fw my-auto" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 576 512" overflow="visible"><use href="#fa-comments"/></svg>
11<span class=d-md-none>&nbsp;Discussions</span></a></li><li class=nav-item><a class=nav-link aria-label=GitHub data-nav=main data-nav-main=github href=https://github.com/passkeydeveloper target=_blank rel="noopener noreferrer nofollow"><svg class="svg-inline--fa fab fa-github fa-fw my-auto" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fab-github"/></svg>
12<span class=d-md-none>&nbsp;GitHub</span></a></li><li class=nav-item><a class=nav-link aria-label=Bluesky data-nav=main data-nav-main=bluesky href=https://bsky.app/profile/passkeys.dev target=_blank rel="noopener noreferrer nofollow"><svg class="svg-inline--fa fab fa-bluesky fa-fw my-auto" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 576 512" overflow="visible"><use href="#fab-bluesky"/></svg>
13<span class=d-md-none>&nbsp;Bluesky</span></a></li><li class=nav-item><a class=nav-link aria-label=Mastodon data-nav=main data-nav-main=mastodon href=https://fosstodon.org/@passkeysdev target=_blank rel="noopener noreferrer nofollow"><svg class="svg-inline--fa fab fa-mastodon fa-fw my-auto" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 448 512" overflow="visible"><use href="#fab-mastodon"/></svg>
14<span class=d-md-none>&nbsp;Mastodon</span></a></li></ul></div></div></nav></div><main id=container class=main><div class="container-xxl flex-fill p-4 px-xxl-0"><div class="row row-cols-1 row-cols--2"><div class="col col--12 col--12"><p class="display-4 mt-5">Device Support</p><small class="text-body-secondary text-uppercase"></small><p>This page, along with the rest of passkeys.dev, is targeted at relying party developers and is not intended to be an end user facing resource.</p><blockquote class=blockquote><p>Said differently, <strong>please don’t link to this page from end user focused resources</strong> 😉</p></blockquote><p>Looking for a consumer focused resources on passkeys? Check out <a href="https://whatarepasskeys.info?ref=passkeys.dev" target=_blank rel="noopener noreferrer nofollow">whatarepasskeys.info</a>.</p><h2 id=matrix class=heading>Matrix<a href=#matrix aria-labelledby=matrix>
15<svg class="svg-inline--fa fas fa-link anchor" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 576 512" overflow="visible"><use href="#fas-link"/></svg>&nbsp;</a></h2><p>This matrix represents the default capabilities for a user out of the box. Additional capabilities may be available when a user installs a different passkey provider.</p><a href=https://tools.passkeys.dev/featuredetect target=_blank rel="noopener noreferrer nofollow" class="btn btn-dark position-relative" role=button><span class="d-flex justify-content-start"><span class=my-auto>Test this client!</span>
16</span></a>&nbsp;<h3 id=basics class=heading>Basic Capabilities<a href=#basics aria-labelledby=basics>
17<svg class="svg-inline--fa fas fa-link anchor" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 576 512" overflow="visible"><use href="#fas-link"/></svg>&nbsp;</a></h3><div id=device-support-table class="table-responsive mt-3"><table class="table table-striped mt-0"><thead><tr class=fw-bold><td>Capability</td><td class=text-center><a href=https://passkeys.dev/docs/reference/android/>Android</a></td><td class=text-center>Chrome OS</td><td class=text-center><a href=https://passkeys.dev/docs/reference/ios/>iOS/iPad OS</a></td><td class=text-center><a href=https://passkeys.dev/docs/reference/macos/>macOS</a></td><td class=text-center>Ubuntu</td><td class=text-center><a href=https://passkeys.dev/docs/reference/windows/>Windows</a></td></tr></thead><tr><td class=fw-bold><span><a href=https://passkeys.dev/docs/reference/terms/#synced-passkey target=_blank>Synced Passkeys</a></span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">v9+</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">v129+</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">v16+</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">v13+</span></td><td class=text-center><svg class="svg-inline--fa far fa-circle-check fa-xl mb-2" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#far-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">Browser<br>Extensions</span></td><td class=text-center><svg class="svg-inline--fa far fa-calendar-plus fa-xl mb-2" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 448 512" overflow="visible"><use href="#far-calendar-plus"/></svg>&nbsp;<br><span class=fs-6>Planned <sup><a href=#fn1>
171</a></sup></span></td></tr><tr><td class=fw-bold><a href=../docs/reference/terms/#autofill-ui target=_blank>Autofill UI<br>(Conditional Get)</a></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;
18<span class=fs-6><br>Chrome 108+<br>Edge 122+<br></span><br><svg class="svg-inline--fa fas fa-circle-xmark fa-xl mb-2 text-danger" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-xmark"/></svg>&nbsp;
19<span class=fs-6><br>Firefox</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">v129+</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;
20<span class=fs-6><br>iOS 16.1+<br>-
21</span><span class="fs-6 text-muted"><br>Safari<br>Chrome<br>Edge<br>Firefox</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;
22<span class=fs-6><br>Safari 16.1+<br>Chrome 108+<br>Firefox 122+<br>Edge 122+<br></span></td><td class=text-center><svg class="svg-inline--fa far fa-circle-check fa-xl mb-2" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#far-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">Browser<br>Extensions</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;
23<span class=fs-6><br>Chrome 108+ <sup><a href=#fn3>3</a></sup><br>Firefox 122+ <sup><a href=#fn3>3</a></sup><br>Edge 122+ <sup><a href=#fn3>3</a></sup></span><br></td></tr><tr><td class=fw-bold><a href=../docs/reference/terms/#conditional-create target=_blank>Passkey Upgrades<br>(Conditional Create)</a></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;
24<span class=fs-6><br>Chrome 142+ <sup><a href=#fn3>2</a></sup><br></span><br><br><svg class="svg-inline--fa fas fa-circle-xmark fa-xl mb-2 text-danger" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-xmark"/></svg>&nbsp;
25<span class=fs-6><br>Edge<br>Firefox</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">136+ </span><sup><a href=#fn8>2</a></sup></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;
26<span class=fs-6><br>iOS 18+ <sup><a href=#fn8>2</a></sup><br>-
27</span><span class="fs-6 text-muted"><br>Safari <sup><a href=#fn8>2</a></sup><br>Chrome <sup><a href=#fn8>2</a></sup><br>Edge <sup><a href=#fn8>2</a></sup><br>Firefox <sup><a href=#fn8>2</a></sup></span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;
28<span class=fs-6><br>Safari 18+</span><sup><a href=#fn8>2</a></sup><br>Chrome 136+ </span><sup><a href=#fn8>2</a></sup><br><br><svg class="svg-inline--fa fas fa-circle-xmark fa-xl mb-2 text-danger" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-xmark"/></svg>&nbsp;
29<span class=fs-6><br>Edge<br>Firefox</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br>Chrome 136+ </span><sup><a href=#fn8>2</a></sup><br><br><br><svg class="svg-inline--fa fas fa-circle-xmark fa-xl mb-2 text-danger" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-xmark"/></svg>&nbsp;
30<span class=fs-6><br>Edge<br>Firefox</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;
31<span class=fs-6><br>Chrome 136+ <sup><a href=#fn3>2</a></sup><br><br><br><svg class="svg-inline--fa fas fa-circle-xmark fa-xl mb-2 text-danger" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-xmark"/></svg>&nbsp;
32<span class=fs-6><br>Edge<br>Firefox</span><br></td></tr><tr class=align-top><td class=fw-bold><a href=../docs/reference/terms/#cross-device-authentication-cda target=_blank>Cross-Device Authentication</a><br><a href=../docs/reference/terms/#cda-authenticator target=_blank><span class=fst-italic>Authenticator</span></a></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">v9+</span></td><td class=text-center><span class="fs-6 text-muted">-<br>n/a</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">v16+</span></td><td class=text-center><span class="fs-6 text-muted">-<br>n/a</span></td><td class=text-center><span class="fs-6 text-muted">-<br>n/a</span></td><td class=text-center><span class="fs-6 text-muted">-<br>n/a</span></td></tr><tr><td class=fw-bold><a href=../docs/reference/terms/#cross-device-authentication-cda target=_blank>Cross-Device Authentication</a><br><a href=../docs/reference/terms/#cda-client target=_blank><span class=fst-italic>Client</span></a></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">v9+</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">v108+</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">v16+</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">v13+</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;
33<span class=fs-6><br>Chrome<br>Edge</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">v23H2+</span></td></tr><tr><td class=fw-bold><a href=../docs/reference/terms/#third-party-passkey-provider target=_blank>Third-Party Credential Managers</a></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">v14+</span></td><td class=text-center><svg class="svg-inline--fa far fa-circle-check fa-xl mb-2" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#far-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">Browser<br>Extensions</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">v17+</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">v14+</span></td><td class=text-center><svg class="svg-inline--fa far fa-circle-check fa-xl mb-2" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#far-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">Browser<br>Extensions</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">v25H2+</span></td></tr></table></div><h3 id=native-apps class=heading>Native Apps<a href=#native-apps aria-labelledby=native-apps>
34<svg class="svg-inline--fa fas fa-link anchor" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 576 512" overflow="visible"><use href="#fas-link"/></svg>&nbsp;</a></h3><div id=device-support-native-apps class=table-responsive><table class="table table-striped mt-0"><thead><tr><td class=fw-bold>Invocation Method</td><td class="text-center fw-bold"><a href=https://passkeys.dev/docs/reference/android/>Android</a></td><td class="text-center fw-bold">Chrome OS</td><td class="text-center fw-bold"><a href=https://passkeys.dev/docs/reference/ios/>iOS/iPad OS</a></td><td class="text-center fw-bold"><a href=https://passkeys.dev/docs/reference/macos/>macOS</a></td><td class="text-center fw-bold">Ubuntu</td><td class="text-center fw-bold"><a href=https://passkeys.dev/docs/reference/windows/>Windows</a></td></tr><tr class=align-top><td class=fw-bold>Native Platform APIs</td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;</td><td class=text-center><span class="fs-6 text-muted">n/a</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;</td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;</td><td class=text-center><svg class="svg-inline--fa far fa-calendar-plus fa-xl mb-2" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 448 512" overflow="visible"><use href="#far-calendar-plus"/></svg>&nbsp;<br><span class=fs-6>Planned</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;</td></tr><tr class=align-top><td class=fw-bold>Default Browser</td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;</td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;</td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;</td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;</td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;</td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;</td></tr><tr class=align-top><td class=fw-bold>System WebView</td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted"><a href=https://developer.chrome.com/docs/android/custom-tabs/guide-get-started target=_blank>Custom
35Tabs</a></span></td><td class=text-center><span class="fs-6 text-muted">-<br>n/a</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted lh-1"><a href=https://developer.apple.com/documentation/authenticationservices/aswebauthenticationsession target=_blank>ASWeb<br>Authentication<br>Session</a></span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted lh-1"><a href=https://developer.apple.com/documentation/authenticationservices/aswebauthenticationsession target=_blank>ASWeb<br>Authentication<br>Session</a></span></td><td class=text-center><span class="fs-6 text-muted">-<br>n/a</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">
35<a href=https://developer.microsoft.com/en-us/microsoft-edge/webview2/ target=_blank>Edge<br>WebView2</a></span></td></tr><tr class=align-top><td class=fw-bold>Embedded WebView</td><td class=text-center><svg class="svg-inline--fa far fa-circle-check fa-xl mb-2" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#far-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">WebView </span><sup><a href=#fn6>6</a></sup></td><td class=text-center><span class="fs-6 text-muted">-<br>n/a</span></td><td class=text-center><svg class="svg-inline--fa far fa-circle-check fa-xl mb-2" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#far-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">WKWebView </span><sup><a href=#fn7>7</a></sup></td><td class=text-center><svg class="svg-inline--fa far fa-circle-check fa-xl mb-2" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#far-circle-check"/></svg>&nbsp;<br><span class="fs-6 text-muted">
35WKWebView </span><sup><a href=#sup8>8</a></sup></td><td class=text-center><span class="fs-6 text-muted">-<br>n/a</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-xmark fa-xl mb-2 text-danger" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-xmark"/></svg>&nbsp;</td></tr></thead></table></div><h3 id=advanced class=heading>Advanced Capabilities<a href=#advanced aria-labelledby=advanced>
36<svg class="svg-inline--fa fas fa-link anchor" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 576 512" overflow="visible"><use href="#fas-link"/></svg>&nbsp;</a></h3><div id=device-support-table-adv class=table-responsive><table class="table table-striped mt-0"><thead><tr class=fw-bold><td>Capability</td><td class=text-center><a href=https://passkeys.dev/docs/reference/android/>Android</a></td><td class=text-center>Chrome OS</td><td class=text-center><a href=https://passkeys.dev/docs/reference/ios/>iOS/iPad OS</a></td><td class=text-center><a href=https://passkeys.dev/docs/reference/macos/>macOS</a></td><td class=text-center>Ubuntu</td><td class=text-center><a href=https://passkeys.dev/docs/reference/windows/>Windows</a></td></tr><tr class=align-middle><td class=fw-bold><a href=../docs/reference/terms/#device-bound-passkey target=_blank><span class=fst-italic>Device-bound</span> Passkeys</a></td><td class=text-center><svg class="svg-inline--fa fas fa-key fa-xl mb-2" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-key"/></svg>&nbsp;<br><span class=fs-6>on security keys</span></td><td class=text-center><svg class="svg-inline--fa fas fa-key fa-xl mb-2" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-key"/></svg>&nbsp;<br><span class=fs-6>on security keys</span></td><td class=text-center><svg class="svg-inline--fa fas fa-key fa-xl mb-2" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-key"/></svg>&nbsp;<br><span class=fs-6>on security keys</span></td><td class=text-center><svg class="svg-inline--fa fas fa-key fa-xl mb-2" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-key"/></svg>&nbsp;<br><span class=fs-6>on security keys</span></td><td class=text-center><svg class="svg-inline--fa fas fa-key fa-xl mb-2" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-key"/></svg>&nbsp;<br><span class=fs-6>on security keys</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;</td></tr><tr class=align-top><td class=fw-bold><a href=../docs/advanced/client-hints/ target=_blank>Client Hints</a></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class=fs-6>Chrome 128+</span><br><span class=fs-6>Edge 128+</span><br><br><svg class="svg-inline--fa fas fa-circle-xmark fa-xl mb-2 text-danger" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-xmark"/></svg>&nbsp;<br>Firefox</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class=fs-6>128+</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-xmark fa-xl mb-2 text-danger" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-xmark"/></svg>&nbsp;<br><span class="fs-6 text-muted">Not Supported</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class=fs-6>Chrome 128+</span><br><span class=fs-6>Edge 128+</span><br><br><svg class="svg-inline--fa fas fa-circle-xmark fa-xl mb-2 text-danger" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-xmark"/></svg>&nbsp;<br>Firefox<br>Safari</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class=fs-6>Chrome 128+</span><br><span class=fs-6>Edge 128+</span><br><br><svg class="svg-inline--fa fas fa-circle-xmark fa-xl mb-2 text-danger" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-xmark"/></svg>&nbsp;<br>Firefox<br><br></span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class=fs-6>Chrome 128+</span><br><span class=fs-6>Edge 128+</span><br><br><svg class="svg-inline--fa fas fa-circle-xmark fa-xl mb-2 text-danger" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-xmark"/></svg>&nbsp;<br>Firefox<br><br></span></td></tr><tr class=align-top><td class=fw-bold id=ror><a href=https://passkeys.dev/docs/advanced/related-origins/ target=_blank>Related Origin Requests</a></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class=fs-6>Chrome 128+</span><br><span class=fs-6>Edge 128+</span><br><span class=fs-6>Firefox 152+</span><br></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class=fs-6>128+</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class=fs-6>v18+</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class=fs-6>Chrome 128+</span><br><span class=fs-6>Edge 128+</span><br><span class=fs-6>Safari (macOS 15+)</span><br><span class=fs-6>Firefox 152+</span><br></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class=fs-6>Chrome 128+</span><br><span class=fs-6>Edge 128+</span><br><span class=fs-6>Firefox 152+</span><br></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;<br><span class=fs-6>Chrome 128+</span><br><span class=fs-6>Edge 128+</span><br><span class=fs-6>Firefox 152+</span><br></td></tr><tr class=align-middle><td class=fw-bold><a href=../docs/reference/terms/#attestation target=_blank>Device-bound Passkey Attestation</a></td><td class=text-center><span class="fs-6 text-muted">n/a</span></td><td class=text-center><span class="fs-6 text-muted">n/a</span></td><td class=text-center><span class="fs-6 text-muted">n/a</span></td><td class=text-center><span class="fs-6 text-muted">n/a</span></td><td class=text-center><span class="fs-6 text-muted">n/a</span></td><td class=text-center><svg class="svg-inline--fa fas fa-circle-check fa-xl mb-2 text-success" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 512 512" overflow="visible"><use href="#fas-circle-check"/></svg>&nbsp;</td></tr></thead></table></div><div class="text-end mb-5 mt-5"><sup id=fn1>1</sup>
37Device-bound passkeys supported<br><sup id=fn8>2</sup>
38Also requires support from credential managers and operating systems<br><sup id=fn3>3</sup>
39Windows 11 22H2+<br><sup id=fn6>6</sup>
40See details on the <a href=https://passkeys.dev/docs/reference/android/#webviews target=_blank>Android reference page</a><br><sup id=fn7>7</sup>
41See details on <a href=https://passkeys.dev/docs/reference/ios/#webviews target=_blank>iOS reference page</a><br><sup id=fn8>8</sup>
42See details on <a href=https://passkeys.dev/docs/reference/macos/#webviews target=_blank>macOS reference page</a></div><div class="mt-5 small">Last Updated: <a href=https://github.com/passkeydeveloper/passkeys.dev/commit/65d8f888fc6ed04823431c01c0af05a3e911c11a target=_blank>Sep 21, 2026</a></div><div class="row row-cols-2 mt-5 mb-3"><div class=col></div><div class="col text-end"></div></div></div></div></div></main><footer class="container-fluid footer p-0 border-top"><div class="container-xxl px-3 px-xxl-0 py-5"><div class=row><div class="col-md-4 small"><a href=https://passkeys.dev/><div class="w-25 d-none-dark"><img class=img-fluid src=https://passkeys.dev/img/logos/pdd-logo-bw-nopad-light.svg height=500 width=3000 alt=passkeys.dev></div><div class="w-25 d-none-light"><img class=img-fluid src=https://passkeys.dev/img/logos/pdd-logo-bw-nopad-dark.svg height=500 width=3000 alt=passkeys.dev></div></a><div class=pt-3>This site is brought to you by members of the <a href=https://www.w3.org/groups/cg/wica/ target=_blank>W3C Web Identity & Credentials Adoption CG</a> and the <a href=https://fidoalliance.org/ target=_blank>FIDO Alliance.</a></div><div class=pt-2><a href=https://passkeys.dev/about/#copyright-and-attributions>CC BY-NC-ND 4.0</a> | <a href=https://passkeys.dev/privacy-policy>Privacy Policy</a></div></div><div class="col-md-2 small">&nbsp</div><div class="col-md-2 col-4 pt-5 pt-md-0"><div class="fs-md-5 fs-6 fw-bold footer-muted">Links</div><div class=py-1><a class="nav-link link-bg-footer" data-nav=main data-nav-main=docs href=https://passkeys.dev/docs/><span class=d-md-none>Docs</span>
43<span class="d-none d-md-block">Docs</span></a></div><div class=py-1><a class="nav-link link-bg-footer" data-nav=main data-nav-main=about href=https://passkeys.dev/about/><span class=d-md-none>About</span>
44<span class="d-none d-md-block">About</span></a></div><div class=py-1><a class="nav-link active link-bg-footer" data-nav=main data-nav-main=device-support href=https://passkeys.dev/device-support/><span class="active d-md-none">Device Support</span>
45<span class="active d-none d-md-block">Device Support</span></a></div></div><div class="col-md-2 col-4 pt-5 pt-md-0"><div class="fs-md-5 fs-6 fw-bold footer-muted">Resources</div><div class=py-1><a class="nav-link link-bg-footer" data-nav=main data-nav-main=passkey-central href=https://passkeycentral.org target=_blank rel="noopener noreferrer nofollow"><span class=d-md-none>Passkey Central</span>
46<span class="d-none d-md-block">Passkey Central</span></a></div><div class=py-1><a class="nav-link link-bg-footer" data-nav=main data-nav-main=dev-discussions href=https://passkeys.dev/discuss target=_blank rel="noopener noreferrer nofollow"><span class=d-md-none>Dev Discussions</span>
47<span class="d-none d-md-block">Dev Discussions</span></a></div><div class=py-1><a class="nav-link link-bg-footer" data-nav=main data-nav-main=consumer-site href="https://whatarepasskeys.info?ref=passkeys.dev" target=_blank rel="noopener noreferrer nofollow"><span class=d-md-none>Consumer Site</span>
48<span class="d-none d-md-block">Consumer Site</span></a></div></div><div class="col-md-2 col-4 pt-5 pt-md-0"><div class="fs-md-5 fs-6 fw-bold footer-muted">Tools</div><div class=py-1><a class="nav-link link-bg-footer" data-nav=main data-nav-main=passkey-developer-tools href=https://tools.passkeys.dev target=_blank rel="noopener noreferrer nofollow"><span class=d-md-none>Passkey Developer Tools</span>
49<span class="d-none d-md-block">Passkey Developer Tools</span></a></div><div class=py-1><a class="nav-link link-bg-footer" data-nav=main data-nav-main=webauthn-response-decoder href=https://debugger.simplewebauthn.dev/ target=_blank rel="noopener noreferrer nofollow"><span class=d-md-none>WebAuthn Response Decoder</span>
50<span class="d-none d-md-block">WebAuthn Response Decoder</span></a></div></div></div></div></footer><div id=toast-container class="toast-container position-fixed bottom-0 end-0 p-3"><div id=toast-copied-code-message class=toast role=alert aria-live=assertive aria-atomic=true><div class=toast-header><strong class=me-auto>passkeys.dev</strong>
51<button type=button class=btn-close data-bs-dismiss=toast aria-label=Close></button></div><div class=toast-body>Code copied to clipboard</div></div></div><dialog class=lightbox aria-label="Enlarged view"><button type=button class=lightbox-close aria-label=Close>
52<svg class="svg-inline--fa fas fa-xmark fa-fw fa-xl" fill="currentColor" aria-hidden="true" role="img" viewBox="0 0 384 512" overflow="visible"><use href="#fas-xmark"/></svg></button><div class=lightbox-content></div></dialog><svg xmlns:xlink="http://www.w3.org/1999/xlink" display="none"><symbol id="fa-comments" overflow="visible" viewBox="0 0 576 512">
52<path fill="currentColor" d="M384 144c0 97.2-86 176-192 176-26.7.0-52.1-5-75.2-14L35.2 349.2c-9.3 4.9-20.7 3.2-28.2-4.2s-9.2-18.9-4.2-28.2l35.6-67.2C14.3 220.2.0 183.6.0 144 0 46.8 86-32 192-32S384 46.8 384 144zm0 368c-94.1.0-172.4-62.1-188.8-144 120-1.5 224.3-86.9 235.8-202.7 83.3 19.2 145 88.3 145 170.7.0 39.6-14.3 76.2-38.4 105.6l35.6 67.2c4.9 9.3 3.2 20.7-4.2 28.2s-18.9 9.2-28.2 4.2L459.2 498c-23.1 9-48.5 14-75.2 14z"/></symbol><symbol id="fab-bluesky" overflow="visible" viewBox="0 0 576 512"><path fill="currentColor" d="M407.8 294.7c-3.3-.4-6.7-.8-10-1.3 3.4.4 6.7.9 10 1.3zM288 227.1C261.9 176.4 190.9 81.9 124.9 35.3 61.6-9.4 37.5-1.7 21.6 5.5 3.3 13.8.0 41.9.0 58.4S9.1 194 15 213.9c19.5 65.7 89.1 87.9 153.2 80.7 3.3-.5 6.6-.9 10-1.4-3.3.5-6.6 1-10 1.4-93.9 14-177.3 48.2-67.9 169.9C220.6 589.1 265.1 437.8 288 361.1c22.9 76.7 49.2 222.5 185.6 103.4 102.4-103.4 28.1-156-65.8-169.9-3.3-.4-6.7-.8-10-1.3 3.4.4 6.7.9 10 1.3 64.1 7.1 133.6-15.1 153.2-80.7C566.9 194 576 75 576 58.4s-3.3-44.7-21.6-52.9c-15.8-7.1-40-14.9-103.2 29.8C385.1 81.9 314.1 176.4 288 227.1z"/></symbol><symbol id="fab-github" overflow="visible" viewBox="0 0 512 512"><path fill="currentColor" d="M216.5 362.5c-66-8-112.5-55.5-112.5-117 0-25 9-52 24-70-6.5-16.5-5.5-51.5 2-66 20-2.5 47 8 63 22.5 19-6 39-9 63.5-9s44.5 3 62.5 8.5c15.5-14 43-24.5 63-22 7 13.5 8 48.5 1.5 65.5 16 19 24.5 44.5 24.5 70.5.0 61.5-46.5 108-113.5 116.5 17 11 28.5 35 28.5 62.5v52c0 15 12.5 23.5 27.5 17.5C441 459.5 512 369 512 257 512 115.5 397 0 255.5.0S0 115.5.0 257c0 111 70.5 203 165.5 237.5 13.5 5 26.5-4 26.5-17.5v-40c-7 3-16 5-24 5-33 0-52.5-18-66.5-51.5-5.5-13.5-11.5-21.5-23-23-6-.5-8-3-8-6 0-6 10-10.5 20-10.5 14.5.0 27 9 40 27.5 10 14.5 20.5 21 33 21s20.5-4.5 32-16c8.5-8.5 15-16 21-21z"/></symbol><symbol id="fab-mastodon" overflow="visible" viewBox="0 0 448 512"><path fill="currentColor" d="M433 179.1c0-97.2-63.7-125.7-63.7-125.7-62.5-28.7-228.6-28.4-290.5.0.0.0-63.7 28.5-63.7 125.7.0 115.7-6.6 259.4 105.6 289.1 40.5 10.7 75.3 13 103.3 11.4 50.8-2.8 79.3-18.1 79.3-18.1l-1.7-36.9s-36.3 11.4-77.1 10.1c-40.4-1.4-83-4.4-89.6-54-.6-4.6-.9-9.3-.9-13.9 85.6 20.9 158.7 9.1 178.7 6.7 56.1-6.7 105-41.3 111.2-72.9 9.8-49.8 9-121.5 9-121.5zM357.9 304.3h-46.6V190.1c0-49.7-64-51.6-64 6.9v62.5H201V197c0-58.5-64-56.6-64-6.9v114.2h-46.7c0-122.1-5.2-147.9 18.4-175 25.9-28.9 79.8-30.8 103.8 6.1l11.6 19.5 11.6-19.5c24.1-37.1 78.1-34.8 103.8-6.1 23.7 27.3 18.4 53 18.4 175z"/></symbol><symbol id="far-calendar-plus" overflow="visible" viewBox="0 0 448 512"><path fill="currentColor" d="M120 0c13.3.0 24 10.7 24 24v40h160V24c0-13.3 10.7-24 24-24s24 10.7 24 24v40h32c35.3.0 64 28.7 64 64v288c0 35.3-28.7 64-64 64H64c-35.3.0-64-28.7-64-64V128C0 92.7 28.7 64 64 64h32V24c0-13.3 10.7-24 24-24zm0 112H64c-8.8.0-16 7.2-16 16v288c0 8.8 7.2 16 16 16h320c8.8.0 16-7.2 16-16V128c0-8.8-7.2-16-16-16H120zm104 64c13.3.0 24 10.7 24 24v48h48c13.3.0 24 10.7 24 24s-10.7 24-24 24h-48v48c0 13.3-10.7 24-24 24s-24-10.7-24-24v-48h-48c-13.3.0-24-10.7-24-24s10.7-24 24-24h48v-48c0-13.3 10.7-24 24-24z"/></symbol><symbol id="far-circle-check" overflow="visible" viewBox="0 0 512 512"><path fill="currentColor" d="M256 512a256 256 0 110-512 256 256 0 110 512zm0-464a208 208 0 100 416 208 208 0 100-416zm70.7 121.9c7.8-10.7 22.8-13.1 33.5-5.3 10.7 7.8 13.1 22.8 5.3 33.5l-122.1 168c-4.1 5.7-10.5 9.3-17.5 9.8s-13.9-2-18.8-6.9l-55.9-55.9c-9.4-9.4-9.4-24.6.0-33.9s24.6-9.4 33.9.0l36 36L326.7 170z"/></symbol><symbol id="fas-circle-check" overflow="visible" viewBox="0 0 512 512"><path fill="currentColor" d="M256 512a256 256 0 110-512 256 256 0 110 512zM374 145.7c-10.7-7.8-25.7-5.4-33.5 5.3L221.1 315.2 169 263.1c-9.4-9.4-24.6-9.4-33.9.0s-9.4 24.6.0 33.9l72 72c5 5 11.8 7.5 18.8 7s13.4-4.1 17.5-9.8l135.9-187c7.8-10.7 5.4-25.7-5.3-33.5z"/></symbol><symbol id="fas-circle-xmark" overflow="visible" viewBox="0 0 512 512"><path fill="currentColor" d="M256 512a256 256 0 100-512 256 256 0 100 512zM167 167c9.4-9.4 24.6-9.4 33.9.0l55 55 55-55c9.4-9.4 24.6-9.4 33.9.0s9.4 24.6.0 33.9l-55 55 55 55c9.4 9.4 9.4 24.6.0 33.9s-24.6 9.4-33.9.0l-55-55-55 55c-9.4 9.4-24.6 9.4-33.9.0s-9.4-24.6.0-33.9l55-55-55-55c-9.4-9.4-9.4-24.6.0-33.9z"/></symbol><symbol id="fas-key" overflow="visible" viewBox="0 0 512 512">
52<path fill="currentColor" d="M336 352c97.2.0 176-78.8 176-176S433.2.0 336 0 160 78.8 160 176c0 18.7 2.9 36.8 8.3 53.7L7 391c-4.5 4.5-7 10.6-7 17v80c0 13.3 10.7 24 24 24h80c13.3.0 24-10.7 24-24v-40h40c13.3.0 24-10.7 24-24v-40h40c6.4.0 12.5-2.5 17-7l33.3-33.3c16.9 5.4 35 8.3 53.7 8.3zM376 96a40 40 0 110 80 40 40 0 110-80z"/></symbol><symbol id="fas-link" overflow="visible" viewBox="0 0 576 512"><path fill="currentColor" d="M419.5 96c-16.6.0-32.7 4.5-46.8 12.7-15.8-16-34.2-29.4-54.5-39.5 28.2-24 64.1-37.2 101.3-37.2C505.9 32 576 102 576 188.5c0 41.5-16.5 81.3-45.8 110.6l-71.1 71.1C429.8 399.5 390 416 348.5 416 262.1 416 192 346 192 259.5c0-1.5.0-3 .1-4.5.5-17.7 15.2-31.6 32.9-31.1s31.6 15.2 31.1 32.9c0 .9.0 1.8.0 2.6.0 51.1 41.4 92.5 92.5 92.5 24.5.0 48-9.7 65.4-27.1l71.1-71.1c17.3-17.3 27.1-40.9 27.1-65.4.0-51.1-41.4-92.5-92.5-92.5zM275.2 173.3c-1.9-.8-3.8-1.9-5.5-3.1-12.6-6.5-27-10.2-42.1-10.2-24.5.0-48 9.7-65.4 27.1L91.1 258.2C73.8 275.5 64 299.1 64 323.6c0 51.1 41.4 92.5 92.5 92.5 16.5.0 32.6-4.4 46.7-12.6 15.8 16 34.2 29.4 54.6 39.5-28.2 23.9-64 37.2-101.3 37.2C70.1 480.2.0 410.2.0 323.7c0-41.5 16.5-81.3 45.8-110.6l71.1-71.1c29.3-29.3 69.1-45.8 110.6-45.8 86.6.0 156.5 70.6 156.5 156.9.0 1.3.0 2.6.0 3.9-.4 17.7-15.1 31.6-32.8 31.2s-31.6-15.1-31.2-32.8c0-.8.0-1.5.0-2.3.0-33.7-18-63.3-44.8-79.6z"/></symbol><symbol id="fas-moon" overflow="visible" viewBox="0 0 512 512"><path fill="currentColor" d="M256 0C114.6.0.0 114.6.0 256S114.6 512 256 512c68.8.0 131.3-27.2 177.3-71.4 7.3-7 9.4-17.9 5.3-27.1s-13.7-14.9-23.8-14.1c-4.9.4-9.8.6-14.8.6-101.6.0-184-82.4-184-184 0-72.1 41.5-134.6 102.1-164.8 9.1-4.5 14.3-14.3 13.1-24.4S322.6 8.5 312.7 6.3C294.4 2.2 275.4.0 256 0z"/></symbol><symbol id="fas-sun" overflow="visible" viewBox="0 0 576 512"><path fill="currentColor" d="M288-32c8.4.0 16.3 4.4 20.6 11.7l55.5 92.6L468.9 46c8.2-2 16.9.4 22.8 6.3S5e2 67 498 75.1l-26.3 104.7 92.7 55.5c7.2 4.3 11.7 12.2 11.7 20.6s-4.4 16.3-11.7 20.6l-92.7 55.6L498 436.8c2 8.2-.4 16.9-6.3 22.8S477 468 468.9 466l-104.7-26.3-55.5 92.7c-4.3 7.2-12.2 11.7-20.6 11.7s-16.3-4.4-20.6-11.7L211.9 439.7 107.2 466c-8.2 2-16.8-.4-22.8-6.3S76 445 78 436.8l26.2-104.7-92.6-55.5C4.4 272.2.0 264.4.0 256s4.4-16.3 11.7-20.6l92.6-55.5L78 75.1c-2-8.2.3-16.8 6.3-22.8S99 44 107.2 46l104.7 26.2 55.5-92.6 1.8-2.6c4.5-5.7 11.4-9.1 18.8-9.1zm0 144a144 144 0 100 288 144 144 0 100-288zm0 240a96 96 0 110-192 96 96 0 110 192z"/></symbol><symbol id="fas-xmark" overflow="visible" viewBox="0 0 384 512"><path fill="currentColor" d="M55.1 73.4c-12.5-12.5-32.8-12.5-45.3.0s-12.5 32.8.0 45.3L147.2 256 9.9 393.4c-12.5 12.5-12.5 32.8.0 45.3s32.8 12.5 45.3.0L192.5 301.3 329.9 438.6c12.5 12.5 32.8 12.5 45.3.0s12.5-32.8.0-45.3L237.8 256 375.1 118.6c12.5-12.5 12.5-32.8.0-45.3s-32.8-12.5-45.3.0L192.5 210.7 55.1 73.4z"/></symbol></svg>
53<script src=https://passkeys.dev/js/core.bundle.en.a656f50be3f43afecff13b4c152cd672e9658b328483fcb5ee91e99321f5e203.js integrity="sha256-plb1C+P0Ov7P8TtMFSzWcullizKEg/y17pHpkyH14gM=" crossorigin=anonymous defer></script>
53<script src=https://passkeys.dev/js/core.bundle.en.0d1c7da2f981dd0ce32e008ebfbf8a1f8c9ff66189e19ed54f46589c18bb4c2f.mjs type=module integrity="sha256-DRx9ovmB3QzjLgCOv7+KH4yf9mGJ4Z7VT0ZYnBi7TC8=" crossorigin=anonymous defer></script>
53<!-- Cloudflare Pages Analytics -->
vendor: 99 bytes, line 53
53<script defer src='https://static.cloudflareinsights.com/beacon.min.js' data-cf-beacon='{"token": "
53ba6f67f99de344d9b277a830d28171f7
vendor: 13 bytes, line 53
53"}'></script>
53<!-- Cloudflare Pages Analytics -->
53<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"6e422f727b2041a3a24592e23de0593e","spa":2}' crossorigin="anonymous"></script>
53
54</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.