> For the complete documentation index, see [llms.txt](https://notes.tejpratapsingh.com/_/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://notes.tejpratapsingh.com/_/offline-first-data-sync/offline-first-data-sync.md).

# Offline First Data Sync

To sync data between 2 or more devices, we need 3 things:

1. [Offline Data](/_/offline-first-data-sync/offline-first-data-sync/offline-data.md) collection: It could be SQLite, Realm or something else
2. [Online Data](/_/offline-first-data-sync/offline-first-data-sync/online-data.md) Store: A server or cloud data provider such as FIrebase, Supabase, Parse etc
3. A [Blob Storage](/_/offline-first-data-sync/offline-first-data-sync/file-store-s3.md) such as AWS S3 or Firebase Storage.
4. And last but not the least, some [~~logic~~ magic](/_/offline-first-data-sync/offline-first-data-sync/sync-logic.md).
