先把数据库放进浏览器再谈同步与协作
RxDB 不是又一层状态管理封装,而是面向重业务 Web 的浏览器内数据基础设施:在本地运行 SQLite / PGlite,用 RxJS 串起查询、写入与副作用,并把同一套模型语义接到 Angular、React、Vue。
SQLite / PGlite 真正执行查询与事务
RxJS 统一查询、写入与副作用
Angular / React / Vue 同一套数据语义
Local-first
Browser SQLSQLite --
执行结果
正在初始化浏览器内 SQLite...
为什么是它
不是再包一层状态,而是补一层数据运行时
很多 Web 应用真正难的地方,不在组件渲染,而在数据落盘、关系查询、写入约束和状态一致性。RxDB 要补的是这一层,而不是继续给 UI 状态打补丁。
真 SQL,不是假缓存
把事务、索引、关系查询和本地持久化放进浏览器,而不是继续在组件树里堆缓存和补丁。
查询天然可订阅
结果变化直接推动界面更新,少写 invalidate、refetch、同步胶水和脆弱的状态拼接。
模型就是系统边界
实体一处定义,类型、查询、表单和生成代码围着它收敛,业务规则不再散落。
换框架,不换语义
Angular、React、Vue 只保留 UI 绑定差异,模型、查询和实体语义保持一致。
接入顺序
先跑通本地链路,再决定要不要继续扩展
推荐顺序不是先看同步和协作,而是先把模型、本地数据库、查询和 UI 绑定跑通。仓库里现在最成熟、最好验证的也是这条主线。
Step 1
先定实体边界
先把字段、关系和索引讲清楚,后面的查询、表单和列表才不会越做越乱。
Step 2
再接本地执行层
按场景选择 SQLite 或 PGlite,把真正的数据落盘和查询执行放进浏览器。
Step 3
把查询当数据流
查询不是一次性 API 返回值,而是可订阅结果;界面跟着数据变,不再手动同步。
Step 4
最后再叠协作
等本地链路稳定后,再引入分支、撤销重做、同步和多端一致性。
框架对等
不是写三套数据层,而是换三种 UI 绑定
目标不是为每个框架重新发明一套数据方案,而是在 Angular、React、Vue 上保持相同业务语义,只把差异收敛到 UI 绑定方式。
Angular
Signals 驱动的业务界面,适合表单、关系数据和复杂状态流。
React
Hooks 风格集成,把查询和实体状态从组件局部状态里剥离出来。
Vue
Composables 与响应式实体协同工作,适合快速搭建数据密集型界面。
阅读路径
文档不是 API 清单,而是接入路线图
文档入口按“先跑通、再建模、再查询、最后考虑协作”组织,目标是帮你判断这套能力适不适合当前项目,而不是只给你一堆孤立 API。