RxDB - JavaScript Database | RxDB - JavaScript Database

RxDB - JavaScript Database | RxDB - JavaScript Database

RxDB is a fast, local-first NoSQL-database for JavaScript Applications like Websites, hybrid Apps, Electron-Apps, Progressive Web Apps and Node.js

Created Aug 29, 2025
Updated May 31, 2026

What it is

RxDB is an open-source JavaScript database designed for storing and synchronizing data within client-side applications. It is built for developers creating modern web, mobile, and desktop applications that require offline functionality, real-time data synchronization, and cross-platform compatibility. It is particularly suited for offline-first applications, real-time collaborative tools, and projects needing a consistent data layer across multiple JavaScript environments.

Main Features

Data Storage & Management

  • Local data storage with support for various underlying storage engines (IndexedDB, SQLite, etc.)
  • Schema validation to ensure data consistency
  • Data migration tools for evolving application schemas
  • Key compression and encryption for performance and security

Replication & Synchronization

  • Real-time synchronization engine to sync with any backend
  • Pre-built replication plugins for services like GraphQL, Firebase, Supabase, CouchDB, and NATS
  • Support for custom backend integration via HTTP endpoints
  • Peer-to-peer (P2P) replication via WebRTC
  • Conflict handling for managing data consistency across clients

Reactivity & Real-time Updates

  • Observable queries, documents, and document fields
  • Automatic UI updates when underlying data changes
  • Native integration with reactive frameworks like RxJS, Angular, React, Vue.js, and Svelte
  • Real-time events across components, browser tabs, and devices

Cross-Platform Support

  • Modular storage architecture that adapts to any JavaScript runtime
  • Support for browsers, React Native, Node.js, Electron, Capacitor, Ionic, Deno, Flutter, and Next.js
  • Consistent API and database logic across all platforms

Additional Capabilities

  • ORM (Object-Relational Mapping) capabilities
  • Middleware for intercepting and transforming database operations
  • Attachment handling for storing binary data
  • Local documents for storing non-replicated configuration data
  • Backup and restore functionality
  • CRDT (Conflict-Free Replicated Data Type) support for distributed systems
  • Population for linking and referencing documents across collections

How it works

Offline-First Application Development

Data is primarily stored locally on the client device. Applications remain fully functional without an internet connection. Queries are run locally against the client-side database, resulting in zero-latency data access. When a connection is available, data is replicated in the background to a configured backend service.

Real-Time Data Synchronization

Users configure a replication protocol (e.g., GraphQL, HTTP, CouchDB) to connect their local RxDB instance to a remote server. Changes made locally are pushed to the server, and changes from the server or other clients are pulled automatically. The observable layer notifies all subscribed parts of the application UI in real-time, ensuring all components display the latest data.

Cross-Platform Development

Developers use the same RxDB API and data logic across different platforms (web, mobile, desktop). The storage plugin is switched to match the runtime environment (e.g., IndexedDB for browsers, SQLite for React Native). This allows for a single codebase to deploy applications to multiple targets.

Key Points

RxDB adopts a strict offline-first approach, ensuring application functionality is not dependent on a network connection. Its modular design provides significant flexibility, allowing developers to choose and switch storage and replication layers as needed. The extensive built-in feature set aims to be a comprehensive, future-proof solution for client-side data management. It is a battle-tested solution used in production by companies for mission-critical systems like point-of-sale systems, field inspection software, and real-time collaborative tools.

Additional Details

RxDB operates on a free open-core model. The core database engine is open-source (MIT licensed) and free to use, targeting hobbyists and prototypes. Premium plugins are available for purchase, offering enhanced storage for performance, robust encryption, and advanced metrics logging. Professional consulting and support services are available for development assistance and custom feature implementation. The project is hosted on GitHub with over 22,000 stars and has an active community on Discord with over 1,250 members.

Quick Actions
Table of Contents