Skip to content

React Native Integration

React Native is a framework for building native apps using React. For additional context, refer to the HTTP Adapter guide.

React Native includes a Fetch API, so you can use oRPC out of the box.

WARNING

However, the Fetch API in React Native has limitations. oRPC features like File, Blob, and AsyncIteratorObject aren't supported. Follow Support Stream #27741 for updates.

TIP

If you're using RPCHandler/Link, you can temporarily add support for File and Blob by extending the RPC JSON Serializer to encode these types as Base64.

ts
import { RPCLink } from '@orpc/client/fetch'

const link = new RPCLink({
  url: 'http://localhost:3000/rpc',
  headers: async ({ context }) => ({
    'x-api-key': context?.something ?? ''
  })
  // fetch: <-- polyfill fetch if needed
})

INFO

The link can be any supported oRPC link, such as RPCLink, OpenAPILink, or another custom link.

Released under the MIT License.