This free tool finds Realm Sync, Atlas Data API and HTTPS Endpoint calls and shows the PowerSync replacement.

Try it freeFull version · $149 once →
What you get: Scan the whole workspace and save one Markdown migration report (file, line, dead call, PowerSync replacement) to hand to your team.
Updated 2026-09-30 · ReadyStack
Finds MongoDB Atlas Device Sync (Realm Sync), Atlas Data API and HTTPS Endpoint calls in JS/TS, Swift, Kotlin and Dart that stopped at the 2025-09-30 end-of-life, with the PowerSync replacement. Runs entirely in your browser — nothing is uploaded.
Same engine as the VS Code extension, byte for byte.
Free for the file open in your editor - no key, no limit. The workspace sweep and the report ask for a key.
VS Code MarketplaceOpen VSX (Cursor, VSCodium)ext install ReadyStack.powersync-migration-check
Team? One key for every ReadyStack linter, 5 seats, $149 once
Scan the whole workspace and save one Markdown migration report (file, line, dead call, PowerSync replacement) to hand to your team.
One payment, one licence key for this tool. The key is shown right after payment.
Buy the full version — $29Need more than this one? ReadyStack Pass opens all 679 files and 561 full versions — $29/month or $199/year. See the Pass →
· ReadyStack
Real numbers from this tool, line by line.

PowerSync migration: 6 findings in one 22-line orders.ts, which is what a React Native, web, Swift, Kotlin or Flutter developer still on MongoDB Realm Sync gets from the free check before writing a line of PowerSync code.
In September 2024 MongoDB deprecated Atlas Device Sync, the sync side of the Atlas Device SDKs (Realm), the Atlas Data API and custom HTTPS Endpoints. All of them reached end-of-life on 2025-09-30. Since that day a client that logs in through Realm.App, opens a Flexible Sync session or posts to data.mongodb-api.com gets no sync. PowerSync's MongoDB module reached general availability in March 2025 and is the path MongoDB pointed Device Sync users to.
The local database is a different story. The Realm SDKs stayed open source, and a local-only Realm still opens and queries. That is why the first job of a migration is a list: which lines are dead, and which ones are fine.
The sample is a small offline order list written for Device Sync:
import * as Realm from 'realm-web';
const app = new Realm.App({ id: 'orders-abcde' });
const user = await app.logIn(Realm.Credentials.anonymous());
const mongo = user.mongoClient('mongodb-atlas');
const DATA_API = 'https://data.mongodb-api.com/app/orders-abcde/endpoint/data/v1';
const res = await fetch(`${DATA_API}/action/find`, { ... });
The check returns 6 findings, one per line above:
Each message ends with the clock. With the date set to 2026-09-29 it reads "Stopped 2025-09-30 (364 days before 2026-09-29)". With a date before the end-of-life the same finding is a warning with the days left.
A grep for realm flags every schema class and every local query you can keep. The 16 rules fire only on the paths that stopped: realm-web and the native sync SDKs used with sync, Realm.App, Realm.Credentials, mongoClient, Flexible Sync configuration, subscriptions, partitionValue, syncSession, user.functions, @realm/react AppProvider and UserProvider, the Data API base URL, Data API actions, the api-key header, custom HTTPS Endpoints and the App Services client API URL. Comment lines are skipped, and a clean PowerSync version of the same file returns 0 findings.
The replacement for the sample is one PowerSyncDatabase with a Schema of Tables, a connector with fetchCredentials() returning your endpoint and JWT, and uploadData() sending each CRUD transaction to your own API. Which rows each user receives moves from client subscriptions into Sync Rules on the server.
The check has 2 inputs: the file text and a date. Paste a file into the web version or open it in VS Code; all 16 rules run on it with no key. The full version scans a whole workspace and writes one Markdown migration report for the team.
It scans JavaScript, TypeScript, Swift, Kotlin and Dart files for MongoDB Atlas Device Sync (Realm Sync), Atlas Data API and HTTPS Endpoint calls, which reached end-of-life on 2025-09-30. It has 16 rules. Each finding gives the line, the dead call and the PowerSync replacement, such as PowerSyncDatabase, fetchCredentials, uploadData or Sync Rules. On the sample orders.ts it reports 6 findings.
It is for mobile and web developers whose offline-first app was built on MongoDB Realm Sync or the Atlas Data API and now has to move to PowerSync. That includes React Native, web (realm-web), Swift, Kotlin and Flutter/Dart teams. It also suits a tech lead who needs a list of every call to replace before estimating the migration.
Local-only Realm databases still work, because the SDKs stayed open source. A grep for realm therefore flags every schema and query you can keep. These 16 rules only fire on the sync, Data API, HTTPS Endpoint and App Services login paths that stopped on 2025-09-30. Each finding names the PowerSync call that replaces it, taken from the PowerSync client API.
The free check takes 2 inputs: the source text and a date. It runs all 16 rules on the open file in VS Code or in the web version, with no key and no limit. The full version scans the whole workspace and saves one Markdown migration report listing each file, line, dead call and PowerSync replacement for your team. It is one payment of $29 per licence key.
The alternative is a developer reading every file by hand for Realm.App, Credentials, mongoClient, flexible sync, subscriptions, syncSession, partitionValue and data.mongodb-api.com URLs, then looking up each PowerSync equivalent. The free check does the file you have open in seconds. The workspace report is one $29 payment instead of a subscription, and the free result on your own file comes first.
One question, answered by the person who built it. Your email only if you want the answer sent.
Paste this code into your page. It runs in your visitor’s browser and stays up to date. Nothing your visitors type is stored.
For businesses: your name and logo instead of ours, and each visitor’s result + e-mail in your inbox (only when they tick consent) — Pro from $19/month. See Pro →
For a team or company: for an invoice with your company details, a quote or several licences, write to [email protected].
Mapbox Migration 2026 — check your code for freeThis free browser tool checks Mapbox GL JS v2+ code for migration issues and shows a MapLibre fix for each flagged line.FreeFull version $29
Miniforge Migration 2026 — find migration lines in your filesThis browser tool finds Anaconda and Miniconda references in Dockerfiles and CI YAML and shows a Miniforge line for each.FreeFull version $29
RDS MySQL 8.4 Upgrade — check mysql settings before upgradingThis free browser tool flags SQL, my.cnf, and parameter-group lines removed in MySQL 8.4 before an RDS MySQL 8.0 upgrade.FreeFull version $29
Npm Trusted publishing setup — check your npm release setup onlineThis browser tool checks GitHub Actions and GitLab CI for token, OIDC, and provenance gaps that can cause a release to return 401.FreeFull version $29
IText AGPL Migration — find itext dependencies and replacementsFind iText dependencies in pom.xml or build.gradle and get replacement lines for OpenPDF 3.0.5 or PDFBox 3.0.8. One payment, one licence…FreeFull version $29
Outlook Email HTML Lint - Classic vs NewClassic Outlook renders with the Word engine, the new Outlook with WebView2. Lint one email file against both at once, line by line, before…FreeFull version $29ReadyStack
Calculators, templates and deadlines for the rules that change every year — free in your browser.