// the find
pubkey/rxdb
A fast, local first, reactive Database for JavaScript Applications https://rxdb.info/
RxDB is a local-first, reactive NoSQL database for JavaScript that sits on top of pluggable storage backends (IndexedDB, SQLite, OPFS, etc.) and adds observable queries, schema validation, and sync on top. It targets apps that need to work offline and sync with a server — think PWAs, Electron apps, and React Native. Been around since 2018 and has real production usage.
The storage abstraction is genuinely useful — you write your database code once and swap IndexedDB for SQLite or OPFS without touching application logic. The reactive query API (subscribing to a query result set rather than polling) is the right model for UI-driven apps and avoids a whole class of stale-data bugs. Replication protocol is backend-agnostic and only requires three HTTP endpoints, which means you're not locked into CouchDB or any specific sync service. Schema migration support is first-class and versioned, which is rare in client-side databases.
The premium plugin paywall is a significant adoption friction point — SQLite storage, OPFS, and the memory-synced storage are all behind a paid license, which means the free tier pushes you toward the slower IndexedDB path. The CouchDB-lineage conflict resolution model (revision trees) is conceptually heavy and will confuse developers who just want last-write-wins. Query capabilities are limited compared to SQL — complex joins and aggregations require manual workarounds or post-processing in application code. The bundle size with all plugins loaded is substantial for a browser environment, and the docs don't surface this tradeoff clearly.