面向 Web 应用的开源响应式数据库,可用纯 TypeScript 编写服务端函数与业务逻辑。
pubkey/rxdb
面向 JavaScript 应用的本地优先、响应式 NoSQL 数据库,可运行于浏览器、Node.js、React Native 等环境。
- Star
- 23,411
- Fork
- 1,182
- 未关闭 Issue
- 19
- 最近提交
- 4小时前
这是什么?
RxDB 是一个面向 JavaScript 应用的 NoSQL 数据库,采用本地优先的设计,并支持订阅数据变化。查询既可以一次性执行,也可以持续监听,查询结果或单个字段变化时界面会自动更新。
存储层可以替换。同一套数据库代码可以运行在 LocalStorage、IndexedDB、OPFS、SQLite、内存存储或 WebWorker 等底层之上,因此可用于浏览器、Node.js、React Native、Capacitor、Flutter 和 Electron。
在数据同步方面,RxDB 提供复制引擎,通过你实现的三个 HTTP 接口与现有后端对接,并提供 GraphQL、CouchDB、WebSocket、WebRTC、Supabase、Firestore、NATS、Google Drive 等插件。此外还支持 schema 校验、加密、数据迁移、冲突处理、附件和 CRDT。
核心功能
- 01响应式查询,结果或单个字段变化时自动推送更新。
- 02可替换的存储引擎,包括 IndexedDB、OPFS、SQLite 和内存存储。
- 03通过自有 HTTP 接口或 GraphQL、CouchDB、Supabase 等插件进行数据同步。
- 04支持 schema 校验、加密、数据迁移和冲突处理。
- 05可运行于浏览器、Node.js、React Native、Capacitor、Flutter 和 Electron。
适用场景
- 开发支持离线使用或实时更新界面的应用,并将数据保存在客户端。
- 在不绑定特定云数据库的前提下,为现有后端增加数据同步。
- 在 Web、移动端和桌面端的 JavaScript 项目之间复用同一套数据层。
- 实现多人协作或需要实时刷新视图的功能。
快速上手
- 1
通过 npm 安装 RxDB 和 RxJS
npm install rxdb rxjs --save - 2
创建数据库和集合并插入一条文档
- 3
一次性查询数据或订阅实时查询结果
使用前须知
- 快速入门示例使用 LocalStorage 存储,其他运行环境需要不同的存储插件。
- 部分复制插件和高级功能属于付费高级插件,需要购买。
标签
常见问题
- rxdb 是什么?
- 面向 JavaScript 应用的本地优先、响应式 NoSQL 数据库,可运行于浏览器、Node.js、React Native 等环境。 RxDB 是一个面向 JavaScript 应用的 NoSQL 数据库,采用本地优先的设计,并支持订阅数据变化。查询既可以一次性执行,也可以持续监听,查询结果或单个字段变化时界面会自动更新。
- rxdb 可以免费使用吗?用的什么许可证?
- rxdb 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- rxdb 还在维护吗?
- 活跃维护中。rxdb 最近一次提交是在 2026年10月21日。
- rxdb 适合用来做什么?
- 开发支持离线使用或实时更新界面的应用,并将数据保存在客户端。 在不绑定特定云数据库的前提下,为现有后端增加数据同步。 在 Web、移动端和桌面端的 JavaScript 项目之间复用同一套数据层。 实现多人协作或需要实时刷新视图的功能。
- rxdb 怎么安装和运行?
- 通过 npm 安装 RxDB 和 RxJS: npm install rxdb rxjs --save 创建数据库和集合并插入一条文档 一次性查询数据或订阅实时查询结果
- 在哪里获取 rxdb?
- 源代码和安装说明在 GitHub 上:https://github.com/pubkey/rxdb
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一个以单个 HTML 文件交付的 PowerPoint 替代品,文件本身包含查看、演示和编辑功能。
一款风格固定的代码格式化工具,可将 JavaScript、TypeScript、CSS、Markdown 等代码统一为一致的格式。
一个用 Go 构建跨平台桌面应用的框架,前端可使用 React、Vue、Svelte 等 Web 技术。
精选的 React Native 应用开发库、工具、资讯与学习资源合集。
用 JavaScript 或 TypeScript 直接调用原生 API,构建 iOS、Android 和 visionOS 原生应用的框架。