Skip to content

Starter kit to build with Expo and thirdweb without additional initial configuration.

Notifications You must be signed in to change notification settings

thirdweb-example/expo-starter

Repository files navigation

Banner

thirdweb expo starter

Starter template to build an onchain react native app with thirdweb and expo.

Features

  • in-app wallets using phone number, email or social logins to create a wallet for the user
  • smart accounts to sponsor gas
  • connecting to external wallets like MetaMask via WalletConnect
  • autoconnecting to the last connected wallet on launch
  • reading contract state and events
  • writing to the blockchain

Installation

Install the template using thirdweb create

  npx thirdweb create app --expo

Get started

  1. Install dependencies
yarn install
  1. Get your thirdweb client id

Rename the .env.example file to .env and paste in your thirdweb client id.

You can obtain a free client id from the thirdweb dashboard.

  1. Prebuild the ios and android directories

Important

The thirdweb SDK uses native modules, which means it cannot run on expo GO. You must build the ios and android apps to link the native modules.

npx expo prebuild

This will create the ios and android directories.

  1. Start the app
yarn ios

or

yarn android

To run this app, you'll need either:

Troubleshooting

OpenSSL Error on Xcode 16

If using xcode 16, you may encounter a OpenSSL error when trying to build the app. This is because xcode 16 requires a newer version of OpenSSL than the one specified in the current app.json.

To fix this, change the version of OpenSSL specified in the app.json file to 3.3.2000.

  • Open the app.json file
  • Find the ios > extraPods section
  • Set "version": "3.3.2000" for the OpenSSL-Universal pod
  • Save the file

Then run npx expo prebuild to update the native modules with the new OpenSSL version and run the app again.

Additional Resources

Support

For help or feedback, please visit our support site