You can use WebView to display web pages on React Native Expo apps.

First, install react-native-webview by this command.

expo install react-native-webview

Then you could add this WebView as shown below.

import * as React from 'react';
import { WebView } from 'react-native-webview';

export default function App() {
  return (
    <WebView 
      style={styles.container}
      source={{ uri: 'https://expo.dev' }}
    />
  );
}

You can also insert custom web (html) page like this:

import * as React from 'react';
import { WebView } from 'react-native-webview';

export default function App() {
  return (
    <WebView
      style={styles.container}
      originWhitelist={['*']}
      source={{ html: '<h1><center>Hello world</center></h1>' }}
    />
  );
}

To know more you can read this doc expo webview

Answer from Make Real on Stack Overflow
🌐
Expo Documentation
docs.expo.dev › third-party libraries › react-native-webview
react-native-webview - Expo Documentation
A library that provides a WebView component. ... For the complete documentation index, see llms.txt. Use this file to discover all available pages. react-native-webview provides a WebView component that renders web content in a native view.
🌐
Reddit
reddit.com › r/reactnative › expo with react-native-webview. nothing happen when i tap in input box
r/reactnative on Reddit: Expo with react-native-webview. Nothing happen when I tap in input box
October 18, 2024 -

Hi guys,

I have been working with React Native for 2 years. This is the first time I use the react-native-webview with Expo because my client wants his app with webview on App Store until we finish the hybrid app. I followed the example from here: https://blog.logrocket.com/react-native-webview-complete-guide/

This is my expo app link: https://expo.dev/preview/update?message=Changed%20it%20to%20google&updateRuntimeVersion=1.0.0&createdAt=2024-10-18T13%3A09%3A42.241Z&slug=exp&projectId=48e95bbb-058c-4956-afbc-f2ddefa1ecb9&group=66d1567f-6701-4230-a070-e1eb0e1c4cf3

This is my code:

import { Image, StyleSheet, Platform } from "react-native";
import { View } from "react-native";
import { WebView } from "react-native-webview";

export default function HomeScreen() {
  return (
    <View style={styles.container}>
      <WebView source={{ uri: "https://www.google.com" }} />
    </View>
  );
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    marginTop: 50,
  },
});

When I tried to tab in Search input box of Google. Nothing happens. Web page is showing like an image. Is it normal or am I missing something? I've tried with/without <View>, none of them works.

Update: my wife just got home. I installed Expo Go on her phone and tried the app. It works on her phone. Her phone is iPhone 16 pro max. It also works on my friend’s iPhone 11 Pro Max. My phone is iPhone 13 Pro Max. It must be something to do with the app permission or just this iPhone model.

Discussions

React Native) How to display website using React Native Expo? - Stack Overflow
I'm attempting to build a website using React Native Web, and have been stuck on trying to display my website using Expo. My expectation is that I will be able to see it when I click "Run in web browser" (it should open a blank page with an intro text) but it only returns back to the Expo page. What am I doing wrong? ... You can use WebView ... More on stackoverflow.com
🌐 stackoverflow.com
How to use the Expo module to extend and wrap a custom WebView?
Is there anyone who can offer me some help? I’d really like to know if it’s possible to write an Expo module by extending react-native-webview to access all the interfaces available in the current library. I only need to customize the shouldInterceptRequest function. More on github.com
🌐 github.com
1
December 6, 2024
Is react-native-webview broken for expo 51.x ?
Minimal reproducible example https://github.com/vjanssens/expo-webview-broken What platform(s) does this occur on? iOS, not tested Android Where did you reproduce the issue? in Expo Go Summary WebV... More on github.com
🌐 github.com
14
October 3, 2024
RNCWebView.isFileUploadSupported Error on Expo EAS Android Build SDK 47
Step 4: (If using developmentClient build) Start expo locally npx expo start and open in Android Build. (NOTE: react-native-webview works fine in Expo Go, it only throws the error when loading it in an actual build.) More on github.com
🌐 github.com
3
January 11, 2023
🌐
Expo Documentation
docs.expo.dev › expo modules api › tutorials › create a native view
Tutorial: Create a native view - Expo Documentation
3 weeks ago - Add the system WebView with a hardcoded URL as a subview of ExpoWebView. The ExpoWebView class extends ExpoView, which extends RCTView from React Native, and eventually extends View on Android and UIView on iOS.
🌐
npm
npmjs.com › package › react-native-webview
react-native-webview - npm
Since WebView was extracted from the React Native core, nearly 500 pull requests have been merged. Considering that we have limited time, issues will mostly serve as a discussion place for the community, while we will prioritize reviewing and merging pull requests. This project is compatible with iOS, Android, Windows and macOS. This project supports both the old (paper) and the new architecture (fabric). This project is compatible with expo...
      » npm install react-native-webview
    
Published   Feb 27, 2026
Version   13.16.1
🌐
Medium
medium.com › @pranavmore › how-to-build-a-simple-webview-app-using-expo-and-react-native-a16f4015467c
How to Build a Simple WebView App Using Expo and React Native | by Pranav more | Medium
January 27, 2025 - A React Native development environment (Android Studio/Xcode for emulators or a physical device with Expo Go) Run the following command to create a new Expo project: npx create-expo-app my-webview-app cd my-webview-app
🌐
Expo Documentation
docs.expo.dev › development process › web › dom components
Using React DOM in Expo native apps - Expo Documentation
2 weeks ago - You can create a manual WebView using the WebView component from react-native-webview.
Find elsewhere
🌐
GitHub
github.com › keyreply › expo-react-native-webview
GitHub - keyreply/expo-react-native-webview · GitHub
Added push notification simulator from Expo Framework. See more. Multiple floating button to represent multiple scenario of chat window in webview · This repo serves a simple app of React Native using Expo Framework.
Author   keyreply
🌐
GitHub
github.com › react-native-webview › react-native-webview
GitHub - react-native-webview/react-native-webview: React Native Cross-Platform WebView · GitHub
Since WebView was extracted from the React Native core, nearly 500 pull requests have been merged. Considering that we have limited time, issues will mostly serve as a discussion place for the community, while we will prioritize reviewing and merging pull requests. This project is compatible with iOS, Android, Windows and macOS. This project supports both the old (paper) and the new architecture (fabric). This project is compatible with expo...
Starred by 7.2K users
Forked by 3.2K users
Languages   TypeScript 29.3% | Java 22.5% | Objective-C 16.9% | C++ 12.8% | Objective-C++ 8.0% | Kotlin 7.6%
🌐
LogRocket
blog.logrocket.com › home › react native webview: a complete guide
React Native WebView: A complete guide - LogRocket Blog
August 12, 2024 - # cd into the directory where to store your project $ cd dir # initialize the expo project $ npx create-expo-app@latest # navigate inside the newly created project $ cd my-project # install the webview package $ expo install react-native-webview # run the development server $ npx expo start
🌐
Medium
yosukep.medium.com › use-webview-with-expo-web-6722969bf7bb
Use Webview with Expo-web. Expo is a wrapper or a development tool… | by Yosuke | Medium
August 3, 2021 - Expo is a wrapper or a development tool to ease development with react-native. You can use react-native-web to develop web apps at the same time. You can create iOS/Android apps and web apps at the same time.
🌐
GitHub
github.com › sndpwrites › expo-webview
GitHub - sndpwrites/expo-webview
This project was developed with Expo managed workflow, React Native WebView and React Navigation. I use stack navigator library for this demo to move between the screens, but any react navigation library can be used with this (e.g.
Starred by 4 users
Forked by 2 users
Languages   JavaScript 100.0% | JavaScript 100.0%
🌐
DEV Community
dev.to › thebuildguy › how-to-use-webview-in-react-native-3gma
How to use WebView in React Native? - DEV Community
August 22, 2024 - In this post, we're going to implement a simple project to see how to work with Webview's on React Native and what are some of the good use cases it serves. To get started we need to begin a new project with React Native CLI. You can do this with expo if you don't want to go through a tedious ...
🌐
Curiosum
curiosum.com › home › blog › react native › react native webview guide - build mobile app from existing web app
React Native WebView: Mobile App from Existing Web App Guide | Curiosum
December 16, 2025 - We don't want to display external web pages in the React Native WebView, we should display these pages using the system's browser, as all the apps do. We are going to use Expo's WebBrowser SDK.
🌐
GitHub
github.com › react-native-webview › react-native-webview › issues › 3638
How to use the Expo module to extend and wrap a custom WebView? · Issue #3638 · react-native-webview/react-native-webview
December 6, 2024 - There are some features where I need to intercept more network requests within the WebView. The onShouldLoadWithRequest function only intercepts the first request of a new page, but it does not trigger requests for various JS files withi...
Author   react-native-webview
🌐
DEV Community
dev.to › aaronblondeau › how-to-create-custom-webview-based-react-native-components-1084
How to create custom WebView based React Native components - DEV Community
April 15, 2025 - The project is setup to provide support for Android, iOS and Web. When used on iOS and Android a WebView is used to render a single file HTML page containing a web app that implements the signature pad.
🌐
Expo Documentation
docs.expo.dev › expo sdk › webbrowser
WebBrowser - Expo Documentation
You can configure expo-web-browser using its built-in config plugin if you use config plugins in your project (Continuous Native Generation (CNG)). The plugin allows you to configure various properties that cannot be set at runtime and require building a new app binary to take effect. If your app does not use CNG, then you'll need to manually configure the library. ... import { useState } from 'react'; import { Button, Text, View, StyleSheet } from 'react-native'; import * as WebBrowser from 'expo-web-browser'; %%placeholder-start%%%%placeholder-end%%import Constants from 'expo-constants'; exp
🌐
Educative
educative.io › answers › how-to-use-webview-in-react-native
How to use WebView in React Native
In React Native, we can use WebView by using a third-party package called react-native-webview.
🌐
GitHub
github.com › expo › expo › issues › 31850
Is react-native-webview broken for expo 51.x ? · Issue #31850 · expo/expo
October 3, 2024 - WebView seems to be broken in Expo SDK 51. Clone the repository, run npm install and npm run ios. Observe text 'Before' and 'After' to be visible, but not the Webview.
Author   expo
🌐
GitHub
github.com › react-native-webview › react-native-webview › issues › 2804
RNCWebView.isFileUploadSupported Error on Expo EAS Android Build SDK 47 · Issue #2804 · react-native-webview/react-native-webview
January 11, 2023 - Step 1: Run npx create-expo-app my-app and cd my-app (sdk 47) Step 2: Install react-native-webview npx expo install react-native-webview. Yarn is used as the package manager.
Author   react-native-webview