React Native SDK

React Native error tracking that survives the crash

Initialize once and export AllStak.wrap(App) — JS errors and native crashes are captured, fetch, XMLHttpRequest, and axios are auto-instrumented, and every event lands on the same platform as your backend errors, logs, and uptime.

Why React Native apps need real error tracking

React Native failures come in two flavors, and you need both. A JavaScript exception leaves a red screen in development but fails silently in production; a native crash takes the whole app down before your JS error boundary ever runs. Neither leaves a trace on the user's device that you can reach — the app restarts, the user shrugs or churns, and your team finds out from a review or never.

AllStak's React Native SDK covers both with one setup. Call AllStak.init with your key and export AllStak.wrap(App) — or wrap the tree with AllStakProvider — and JS errors and native crashes are captured. fetch, XMLHttpRequest, and axios are auto-instrumented with configurable redaction, handled exceptions and messages report via captureException and captureMessage, and it all arrives on the same platform as your backend errors, logs, traces, and uptime — one bill, one dashboard, English or Arabic.

Full React Native monitoring

From a JS exception in a component to the native crash beneath it and the API call behind it, AllStak covers your React Native app across every layer.

JS errors & native crashes

Export AllStak.wrap(App) and both layers are covered — JavaScript exceptions and the native crashes that never reach your JS code.

Expo-ready setup

Built for React Native with Expo: pass the key via EXPO_PUBLIC_ALLSTAK_API_KEY, init once, and ship — or wrap the tree with AllStakProvider instead.

Handled errors & messages

Report handled exceptions via captureException and leave leveled messages via captureMessage — so expected failures are tracked, not just crashes.

Automatic HTTP tracking

fetch, XMLHttpRequest, and axios are auto-instrumented (enableHttpTracking, default on), with httpTracking configuring redaction — no manual calls needed.

Releases & crash-free sessions

Set release on init to track crash-free sessions per version — and know whether the latest OTA update or store build regressed.

Alerts & notification rules

Route new crashes and error spikes to Slack, email, and more with notification rules — before the support tickets arrive, not after.

Add AllStak in minutes

Install from npm, initialize with your key, and export the wrapped root component — JS errors and native crashes are captured from there.

index.tsx
npm install @allstak/react-native

import * as AllStak from '@allstak/react-native';
import App from './App';

AllStak.init({
  apiKey: process.env.EXPO_PUBLIC_ALLSTAK_API_KEY,
  environment: process.env.NODE_ENV ?? 'production',
  release: process.env.EXPO_PUBLIC_RELEASE,
  tracesSampleRate: 1.0,
  enableLogs: true,
});

export default AllStak.wrap(App);

Export AllStak.wrap(App) so native crashes are captured — or wrap the tree with AllStakProvider instead. Provide the key via EXPO_PUBLIC_ALLSTAK_API_KEY. full setup guide · SDK reference.

What you see in AllStak

Crash detail with full context

Open any issue to the stack trace, the environment, and the release it shipped in — whether it started in JavaScript or in native code.

HTTP calls behind the failure

Auto-tracked fetch, XHR, and axios requests show which API calls surrounded the error — with sensitive fields redacted per your httpTracking config.

Crash-free sessions per release

See how each version behaves on real devices — and catch a bad release before most of your users update to it.

Unified real-time dashboard

Mobile crashes next to the backend errors, logs, and uptime of the APIs behind them — one dashboard, in English or Arabic, for the whole team.

Why teams pick AllStak for React Native

  • Mobile and backend on one platform — crashes, errors, logs, traces, and uptime with one bill.
  • One init plus AllStak.wrap(App) — JS errors and native crashes captured from there.
  • Not tied to Firebase — crash reporting without adopting a whole second vendor ecosystem.
  • fetch, XHR, and axios auto-instrumented with configurable redaction — no per-call wrapping.
  • Predictable SAR pricing with a genuine free tier — start without a credit card.
  • Data stays in Saudi Arabia, with an English and Arabic dashboard for the whole team.

React Native monitoring FAQ

How do I add crash reporting to a React Native app?

Install @allstak/react-native from npm, call AllStak.init with your project API key, and export AllStak.wrap(App) as your root component — that captures JS errors and native crashes. Alternatively, wrap the tree with AllStakProvider; the setup guide covers both.

Does AllStak work with Expo?

Yes. The SDK is built for React Native (Expo) apps — provide the API key via EXPO_PUBLIC_ALLSTAK_API_KEY and the release via EXPO_PUBLIC_RELEASE, and the documented init snippet works as-is.

Is AllStak an alternative to Firebase Crashlytics for React Native?

Yes. You get crash reporting and error tracking without tying your app to Firebase — and unlike Crashlytics, the same platform also monitors your backend errors, logs, traces, and uptime. Add a bilingual English/Arabic dashboard, SAR pricing, and data stored in Saudi Arabia, and the whole stack lives in one place.

Is AllStak free for React Native?

Yes. AllStak has a free tier you can start on without a credit card, and predictable SAR pricing as you grow. The React Native SDK itself is free to use.

Will the SDK slow down my React Native app?

The SDK is built for production apps: capture hooks are lightweight and telemetry ships in the background, so your users' experience isn't meaningfully affected. You stay in control — HTTP auto-tracking can be turned off via enableHttpTracking, and tracesSampleRate controls how much performance data is sampled.

Start tracking React Native errors today

Init once, wrap your app, and watch JS errors, native crashes, and HTTP calls arrive in one dashboard. Start free — no credit card required.