The tools that make this easier to build
You don't have to build a sync engine from scratch
RxDB: JavaScript database for web and mobile with built-in sync, conflict resolution, and offline support
WatermelonDB: built specifically for React Native, uses SQLite, and is designed for thousands of records with complex queries
PowerSync: syncs Postgres to local SQLite on mobile and web, handles the delta sync and conflict resolution layer for you
Firebase Firestore: offline persistence baked in out of the box, handles sync automatically (with some limitations on conflict resolution)
PouchDB: syncs with CouchDB, one of the oldest offline-first databases in the JavaScript ecosystem
Pick based on your stack, your sync complexity, and how much control you need over conflict resolution.