# expo-web-browser

> Provides access to the system's web browser and supports handling redirects. On iOS, it uses SFSafariViewController or ASWebAuthenticationSession, depending on the method you call, and on Android it uses ChromeCustomTabs. As of iOS 11, SFSafariViewControl

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

## Install

```sh
npm install expo-web-browser
pnpm add expo-web-browser
yarn add expo-web-browser
bun add expo-web-browser
```

## 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 | 2019-02-17 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 0 |
| Unpacked size | 279.1 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 52310 |
| Author | 650 Industries, Inc. |
| Maintainers | ide, brentvatne, expoadmin, exponent, bycedric, kudochien, alanhughes, tsapeta, expo-bot, philpl, ccheever, wschurman |
| Keywords | react-native, expo, expo-web-browser, web, browser |

## Links

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

## Alternatives

- [@opentelemetry/exporter-zipkin](https://npm.io/package/@opentelemetry/exporter-zipkin.md) — 14.8M weekly downloads
- [pusher-js](https://npm.io/package/pusher-js.md) — 2.0M weekly downloads
- [browserify](https://npm.io/package/browserify.md) — 1.7M weekly downloads
- [sqs-consumer](https://npm.io/package/sqs-consumer.md) — 1.7M weekly downloads
- [@sanity/eventsource](https://npm.io/package/@sanity/eventsource.md) — 930.8K weekly downloads

## Recent versions

- 57.0.3 (latest) — 2026-09-11
- 58.0.2 (next) — 2026-09-22
- 58.0.0-canary-20260909-ea7a89a (canary) — 2026-09-09
- 55.0.20 (sdk-55) — 2026-08-25
- 56.0.6 (sdk-56) — 2026-07-23
- 56.0.6-canary-20260701-9100865 (canary-sdk-56) — 2026-07-01
- 55.0.10-canary-20260429-a5e59cf (canary-sdk-55) — 2026-04-29
- 15.0.11 (sdk-54) — 2026-04-27
- 13.0.3 (sdk-51) — 2024-04-29
- 12.8.2 (sdk-50) — 2024-01-24
- 58.0.1 — 2026-09-21
- 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
- … 260 more at https://npm.io/package/expo-web-browser/versions

## README

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

Provides access to the system's web browser and supports handling redirects. On iOS, it uses SFSafariViewController or ASWebAuthenticationSession, depending on the method you call, and on Android it uses ChromeCustomTabs. As of iOS 11, SFSafariViewController no longer shares cookies with Safari, so if you are using WebBrowser for authentication you will want to use WebBrowser.openAuthSessionAsync, and if you just want to open a webpage (such as your app privacy policy), then use WebBrowser.openBrowserAsync.

# API documentation

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

# 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/webbrowser/).

# 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-web-browser
```

### Configure for Android

No additional set up necessary.

### Configure for iOS

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

# 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-web-browser · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
