Repolode
share

share/sharedb

基于 Operational Transformation 的实时 JSON 文档数据库后端,支持多人协同编辑与实时同步。

Star
6,562
Fork
458
未关闭 Issue
171
最近提交
前天

这是什么?

ShareDB 是一个基于 Operational Transformation(OT)的实时 JSON 文档数据库后端,OT 是许多协同编辑器所采用的核心技术。客户端通过同步风格的 API 修改文档,修改会与其他用户的编辑合并,并以最终一致性的方式同步到所有已连接的客户端。

它可以通过简单的适配方式接入任意数据库,支持实时查询订阅、只传输指定字段的 projection,以及用于权限控制和自定义扩展的中间件。借助 pub/sub 集成可以横向扩展。断线后离线产生的修改会在重连时同步,也可以访问文档的历史版本。

ShareDB 可以在浏览器和服务端运行,并提供内存版数据库与 pub/sub 实现,便于单元测试。它也是 DerbyJS Web 应用框架的实时后端。

核心功能

  • 01JSON 文档在多个客户端之间实时同步
  • 02基于 Operational Transformation 支持多用户并发编辑
  • 03支持实时查询订阅
  • 04通过 projection 选择需要的字段
  • 05提供用于权限控制和扩展的中间件
  • 06断线重连后同步离线期间的修改

适用场景

  • 为 Web 应用添加多人协同编辑功能
  • 构建多用户实时更新的看板或排行榜
  • 在现有数据库之上增加实时同步能力
  • 使用内置内存适配器测试实时逻辑

使用前须知

  • 元数据中未识别出许可证(NOASSERTION),使用前请先查看仓库的许可证。

标签

常见问题

sharedb 是什么?
基于 Operational Transformation 的实时 JSON 文档数据库后端,支持多人协同编辑与实时同步。 ShareDB 是一个基于 Operational Transformation(OT)的实时 JSON 文档数据库后端,OT 是许多协同编辑器所采用的核心技术。客户端通过同步风格的 API 修改文档,修改会与其他用户的编辑合并,并以最终一致性的方式同步到所有已连接的客户端。
sharedb 可以免费使用吗?用的什么许可证?
sharedb 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
sharedb 还在维护吗?
活跃维护中。sharedb 最近一次提交是在 2026年11月5日。
sharedb 适合用来做什么?
为 Web 应用添加多人协同编辑功能 构建多用户实时更新的看板或排行榜 在现有数据库之上增加实时同步能力 使用内置内存适配器测试实时逻辑
在哪里获取 sharedb?
源代码和安装说明在 GitHub 上:https://github.com/share/sharedb

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目