For teams with a React Native app on Realm®

Your app still runs on Realm. Let's keep it shipping.

MongoDB deprecated Realm in September 2025. Since then, users have reported build failures on newer React Native and Xcode versions. We help you keep your app building, then move your local data to SQLite, with every object checked.

Reply within 12 hours. Fixed price after the check.

Three ways we can help

Know your risk

A short fixed-price diagnostic: what is likely to break next, and the cheapest way out (keep, patch or migrate).

Keep your app building

We are preparing an open-source fork of the realm-js SDK (v20). It builds and runs on Android emulators (React Native 0.86 to 0.88, Expo SDK 56 to 58) and on the iPhone simulator (React Native 0.88.1, Xcode 26.4.1 and 26.6), with nothing downloaded at install. Your code keeps import Realm from "realm".

Leave Realm safely

We convert your .realm files to SQLite, encrypted files included, and check every object with a checksum. Our test runs Realm queries on both sides and lists every difference.

What is tested so far

The fork, on Android

  • React Native 0.88.1, new architecture: release build for all 4 Android ABIs
  • Runs on Android 7, 11 and 16 emulators, and Android 16 with 16 KB pages: read, write, live queries, encrypted realm, data kept after a restart
  • Also runs with React Native 0.86.3 and 0.87.1, and Expo SDK 56, 57 and 58 (emulator with 16 KB pages)
  • Release builds with R8 turned on work (the Expo SDK 58 default)
  • All 64-bit native libraries of our test app are 16 KB aligned (24 of 24)
  • OpenSSL 3.5.9 LTS included: nothing is downloaded at install or build time

The fork, on iOS

  • React Native 0.88.1 with Xcode 26.4.1 and 26.6, with and without frameworks: Debug and Release builds
  • Runs on the iPhone simulator and keeps its data after a restart
  • The build for iPhone devices succeeds (without code signing)

The fork, in Node

  • Installs offline
  • realm-js's own test suites give the same results as the original realm 20.2.0

Not tested yet

  • Real phones: so far only emulators and the iPhone simulator
  • iOS with React Native 0.86 or 0.87, or with Expo

The fork is not public and not on npm yet.

The conversion tool

  1. Every object checked

    A SHA-256 hash per object and per table, foreign keys and a field-by-field sample. On our test file covering every supported type: zero differences.

  2. Values SQLite would lose

    NaN, -0, dates before 1970 and non-ASCII text are kept and checked. SQLite alone turns NaN into NULL and -0 into 0, without any warning.

  3. Queries compared one by one

    196 Realm queries run on both sides: 2 differences, both known and explained. Realm has quirks a naive port silently changes, like [c] folding only ASCII and Latin-1 letters.

Questions

It still works. Why act now?

It works until the next upgrade. The check looks at your versions and tells you which React Native, Xcode or Google Play change is likely to break your app.

We plan to move to a sync service.

If you need sync, that can be the right choice. Your local data and query behavior still have to move with you: we can handle that part.

What is not covered?

Device Sync, the old React Native architecture, bugs inside the Realm engine itself (we use the upstream engine unchanged), and Realm Swift, Kotlin and Flutter. SwiftPM is not supported yet. We say so before any work starts.

What about our users' data?

The conversion tool runs where your data already is, on your machine or in your CI. It opens the .realm file read-only and checks afterwards that the file has not changed. For the free check, we only need your versions and the error.

Free 15-minute check

Send your Realm and React Native versions, or a link to your repository, and what breaks today. We reply within 12 hours.

Or write to hello@pomwik.com.

We only use this to reply to you. Privacy (French)