# expo-local-authentication

> Provides an API for FaceID and TouchID (iOS) or the Fingerprint API (Android) to authenticate the user with a face or fingerprint scan.

Latest version **57.0.3** (published 2026-09-11) · MIT license · 0 weekly downloads

## Install

```sh
npm install expo-local-authentication
pnpm add expo-local-authentication
yarn add expo-local-authentication
bun add expo-local-authentication
```

## Health

**Score 75/100 (B)** — status: active.

Positive: has types; no vulnerabilities; recently updated; high maintenance score; high quality score; popular repo; extremely popular.

Warnings: low downloads; no esm support.

## Facts

| | |
|---|---|
| Version | 57.0.3 |
| Published | 2026-09-11 |
| First published | 2018-09-03 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 1 |
| Unpacked size | 136.8 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 52463 |
| Author | 650 Industries, Inc. |
| Maintainers | ide, brentvatne, expoadmin, exponent, bycedric, kudochien, alanhughes, tsapeta, expo-bot, philpl, ccheever, wschurman |
| Keywords | react-native, expo, authentication, auth, touchID, faceID, fingerprint |

## Links

- npm: https://www.npmjs.com/package/expo-local-authentication
- Repository: https://github.com/expo/expo
- Homepage: https://docs.expo.dev/versions/latest/sdk/local-authentication/
- Issues: https://github.com/expo/expo/issues
- npm.io page: https://npm.io/package/expo-local-authentication

## Dependencies (1)

- [invariant](https://npm.io/package/invariant.md) ^2.2.4

## Alternatives

- [@clerk/clerk-expo](https://npm.io/package/@clerk/clerk-expo.md) — 133.6K weekly downloads
- [@pothos/plugin-authz](https://npm.io/package/@pothos/plugin-authz.md) — 12.4K weekly downloads
- [@bounded-sh/client](https://npm.io/package/@bounded-sh/client.md) — 3.2K weekly downloads
- [@luigi-project/plugin-auth-oauth2](https://npm.io/package/@luigi-project/plugin-auth-oauth2.md) — 2.3K weekly downloads
- [@nocobase/plugin-verification](https://npm.io/package/@nocobase/plugin-verification.md) — 2.0K weekly downloads

## Recent versions

- 57.0.3 (latest) — 2026-09-11
- 58.0.1 (next) — 2026-09-29
- 58.0.0-canary-20260909-ea7a89a (canary) — 2026-09-09
- 55.0.18 (sdk-55) — 2026-08-25
- 17.0.9 (sdk-54) — 2026-08-17
- 56.0.5 (sdk-56) — 2026-07-23
- 56.0.5-canary-20260701-9100865 (canary-sdk-56) — 2026-07-01
- 55.0.9-canary-20260429-a5e59cf (canary-sdk-55) — 2026-04-29
- 14.0.1 (sdk-51) — 2024-04-23
- 13.8.0 (sdk-50) — 2023-11-14
- 58.0.0 — 2026-09-10
- 58.0.0-canary-20260908-e343e6e — 2026-09-08
- 58.0.0-canary-20260902-26df09e — 2026-09-02
- 58.0.0-canary-20260901-2164f24 — 2026-09-02
- 55.0.17 — 2026-08-17
- … 249 more at https://npm.io/package/expo-local-authentication/versions

## README

<p>
  <a href="https://docs.expo.dev/versions/latest/sdk/local-authentication/">
    <img
      src="../../.github/resources/expo-local-authentication.svg"
      alt="expo-local-authentication"
      height="64" />
  </a>
</p>

Provides an API for FaceID and TouchID (iOS) or the Fingerprint API (Android) to authenticate the user with a face or fingerprint scan.

# API documentation

- [Documentation for the latest stable release](https://docs.expo.dev/versions/latest/sdk/local-authentication/)
- [Documentation for the main branch](https://docs.expo.dev/versions/unversioned/sdk/local-authentication/)

# Installation in managed Expo projects

For [managed](https://docs.expo.dev/archive/managed-vs-bare/) Expo projects, please follow the installation instructions in the [API documentation for the latest stable release](https://docs.expo.dev/versions/latest/sdk/local-authentication/).

# Installation in bare React Native projects

For bare React Native projects, you must ensure that you have [installed and configured the `expo` package](https://docs.expo.dev/bare/installing-expo-modules/) before continuing.

### Add the package to your npm dependencies

```
npx expo install expo-local-authentication
```

### Configure for Android

No additional set up necessary.

This module requires permissions to access the biometric data for authentication purposes. The `USE_BIOMETRIC` and `USE_FINGERPRINT` permissions are automatically added.

```xml
<!-- Added permissions -->
<uses-permission android:name="android.permission.USE_BIOMETRIC" />
<uses-permission android:name="android.permission.USE_FINGERPRINT" />
```

### Configure for iOS

Run `npx pod-install` after installing the npm package.

Add `NSFaceIDUsageDescription` to your `Info.plist`:

```xml
<key>NSFaceIDUsageDescription</key>
<string>Allow $(PRODUCT_NAME) to use FaceID</string>
```

# Contributing

Contributions are very welcome! Please refer to guidelines described in the [contributing guide](https://github.com/expo/expo#contributing).

---
_Source: https://npm.io/package/expo-local-authentication · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
