WatermelonDB

What WatermelonDB is
WatermelonDB is a free, MIT-licensed reactive database framework for React and React Native applications. It is built for offline-first use, storing data locally and providing tools to synchronize it with a remote database. Developers supply that backend; WatermelonDB includes synchronization primitives and an adapter for backend endpoints that follow its sync protocol. Records load lazily, and queries run directly on SQLite on a separate native thread. The project describes its intended scale as hundreds to tens of thousands of records. When a record changes, UI components that depend on it update automatically. The documentation covers React and React Native, an optional RxJS API, and a JavaScript API for other UI frameworks. Its setup guide uses SQLite for React Native and Node.js, and LokiJS for web. The platform list includes iOS, Android, web, Windows, and API. React Native Windows support is experimental, requires JSI, and does not include Turbo Sync. The sync documentation describes cases where a push can fail after a remote change between pull and push, and where pushed changes can be pulled again on the next sync. The project names Radek Pietruszewski as its main author and maintainer and welcomes issues and contributions; its documentation links to Stack Overflow for community help.
Who it suits
WatermelonDB suits developers building React or React Native apps that need a local database for offline use and synchronization with a remote backend. It is also relevant to developers using other UI frameworks through its JavaScript API, provided they can supply and maintain the synchronization backend.
What it does well
- Free and MIT licensed
- Offline-first storage with synchronization primitives
- Lazy record loading and SQLite queries on a separate native thread
- Record changes update dependent UI components automatically
- Optional RxJS API and JavaScript API for other UI frameworks
What to know first
- Developers must provide their own backend for synchronization
- React Native Windows support is experimental and requires JSI
- Windows support does not implement Turbo Sync
- Documented sync edge cases include failed pushes and repeated pulls
Plans
| Plan | Billed and limits | Price |
|---|---|---|
| WatermelonDB | Open-source database framework · MIT license | Free |
As watermelondb.dev lists them, read 7 Oct 2026. The maker's own page has the final word.
Getting started
- Visit the WatermelonDB website and documentation
- Choose SQLite for React Native or Node.js, or LokiJS for web
- Add WatermelonDB to a React or React Native application
- Provide a remote backend if the app needs synchronization
- Implement endpoints that follow WatermelonDB's sync protocol
Verdict
Choose WatermelonDB if you are building a React or React Native application that needs local, offline-first data and you can provide the backend. Its free MIT license and reactive data model are useful for that setup; look elsewhere if you need a supplied synchronization backend or stable Windows support.
Questions
How much does WatermelonDB cost?
WatermelonDB is free and MIT licensed.
Does WatermelonDB include a free trial?
No free trial is listed; the framework is free.
Which platforms are listed?
The listed platforms are Android, iOS, web, Windows, and API.
Does WatermelonDB provide a synchronization backend?
No. It is a local database, so developers must provide their own backend. It offers sync primitives and an adapter for endpoints following its protocol.
What license does WatermelonDB use, and who maintains it?
It uses the MIT license and names Radek Pietruszewski as its main author and maintainer.
What should developers know about Windows support?
React Native Windows support is experimental, requires JSI, and does not implement Turbo Sync.
Facts from WatermelonDB's own pages
- Backend requirement
- WatermelonDB is a local database, so users need to provide their own backend for synchronization. · watermelondb.dev, 7 Oct 2026
- Integrations
- The docs describe React and React Native usage, an optional RxJS API, and a JavaScript API for other UI frameworks. · watermelondb.dev, 7 Oct 2026
- Known sync limitations
- The docs note that a push can fail if a record changes remotely between pull and push, and that pushed changes may be pulled again on the next sync. · watermelondb.dev, 7 Oct 2026
- License and maintainer
- WatermelonDB is MIT licensed and names Radek Pietruszewski as its main author and maintainer. · watermelondb.dev, 7 Oct 2026
- Offline first
- WatermelonDB is designed for offline first use and synchronization with a remote database. · watermelondb.dev, 7 Oct 2026
- Performance
- It lazily loads records and runs queries directly on SQLite on a separate native thread. · watermelondb.dev, 7 Oct 2026
- Platforms
- The installation guide documents iOS, Android, web, Node.js, and experimental React Native Windows support. · watermelondb.dev, 7 Oct 2026
- Product
- WatermelonDB is a reactive database framework for React and React Native applications. · watermelondb.dev, 7 Oct 2026
- Reactive UI
- Changes to records automatically re-render the UI components that depend on them. · watermelondb.dev, 7 Oct 2026
- Scale
- The project describes its target scale as hundreds to tens of thousands of records. · watermelondb.dev, 7 Oct 2026
- Security guidance
- The sync backend guide says to whitelist acceptable collection and column names and validate record IDs and permissions. · watermelondb.dev, 7 Oct 2026
- Storage adapters
- The setup guide uses SQLite for React Native and Node.js, and LokiJS for web. · watermelondb.dev, 7 Oct 2026
- Support and contribution
- The project invites users to open issues and contribute, and its docs link to Stack Overflow for community help. · watermelondb.dev, 7 Oct 2026
- Sync support
- It provides sync primitives and a built-in sync adapter that works with backend endpoints following its sync protocol. · watermelondb.dev, 7 Oct 2026
- Windows limits
- React Native Windows support is experimental, requires JSI, and does not implement Turbo Sync. · watermelondb.dev, 7 Oct 2026
Where WatermelonDB stands on Freedom251
- Mobile Databases#19 of 26