Hocuspocus:Tiptap 出品的 Y.js 即插即用协作后端

后端
协作
开源
WebSocket
2026/9/29
·

阅读时间: 大约 6 分钟

Hocuspocus:Tiptap 出品的 Y.js 即插即用协作后端

Hocuspocus 官方文档:v4.7.0、月下载 260 万、MIT 协议

在线协作编辑器(多人同时改一段文字、互相不覆盖)听起来像 Notion/Google Docs 那种巨头专属功能,背后却是分布式系统里最硬的问题之一:OT/CRDT 同步算法自己写一遍几乎是研究生课题。Hocuspocus(ueberdosis/hocuspocus,MIT)是 Tiptap 团队把这件事打包好的后端:基于 Y.js CRDT,WebSocket 一层,几行代码起服务,多人实时编辑自动合并。本文基于官方仓库与文档实读。

一、它把什么变成了”一行代码”

官方 README 给的最小可用后端:

import { Server } from '@hocuspocus/server'
import { SQLite } from '@hocuspocus/extension-sqlite'

const server = new Server({
  port: 1234,
  extensions: [new SQLite({ database: 'db.sqlite' })],
});
server.listen();

就这些。@hocuspocus/server 起 WebSocket,SQLite 扩展负责把文档状态持久化,前端用 Tiptap 的 collaboration 扩展一连,多人光标、自动合并、断线重连全有了。你不需要理解 Y.js 的 updates 编码、不需要自己实现房间管理。

二、生态位置:Y.js 的官方级后端

关键事实(GitHub 侧栏实读):

  • 月下载量 260 万(docs badge 实读);
  • 102 个 release,最新 v4.7.0;
  • 约 2000 个仓库在用;
  • 88 个贡献者;
  • 赞助商名单就是一份”谁在用它做生产产品”的清单:Outline、Ahrefs、Gamma、Sana、Saga、Cargo——Outline 这种开源笔记产品是它的招牌案例。

它和 Tiptap 是一家(ueberdosis),所以 Tiptap 富文本编辑器的协同开箱即用;但它本身是独立 Y.js 后端,配 ProseMirror/ProseKit 等任何 Y.js 客户端都行。

不想自托管?官方提供 Tiptap Collab 云托管——开源核心 + 云服务的商业模式,和 TipTap 一致。

三、口径与局限

  1. “plug & play”是起步,生产要自己补。 SQLite 扩展适合小规模/本地,真上生产要换 Postgres 持久化、水平扩展(多节点同步文档状态)、鉴权(onAuthenticate 钩子)、限流——这些是扩展点,不是开箱能力。
  2. Y.js 的天花板就是它的天花板。 Y.js 是 CRDT 文本协同的事实标准,但文档模型是结构化文本(Y.Doc),不是任意应用状态;做白板/画布协同要自己想办法把图形操作编码进 Y.js。
  3. “离线优先同步”宣传要理解边界。 文档说”可以做 offline-first 应用,之后同步”——CRDT 确实支持,但客户端冲突合并的体验仍取决于你的 Y.Doc 结构设计,不是服务端替你做了一切。
  4. Node.js 后端。 整个栈是 TypeScript/Node.js(98.2%),高并发下 WebSocket 连接数的 Node 单进程模型需要自己做水平扩展;它不是用 Rust/Go 写的高性能网关。
  5. 商业模式的隐忧。 仓库顶部挂着”帮我们规划 Hocuspocus 未来的调研,抽 $50 礼品卡”——说明官方在认真评估方向。开源核心长期免费,但路线(往 Tiptap Collab 云倾斜)要持续关注。
  6. 14 个 open issue、5 个 PRs——项目维护健康,但不像早期那么活跃,大版本节奏慢。

四、客观评价

优势:

  • Y.js 生态最成熟的开箱后端,Tiptap 亲儿子,文档顺滑;
  • SQLite/Postgres/Redis 扩展生态齐全;
  • MIT、TypeScript 原生、月下载 260 万验证了生产可用性;
  • Outline/Ahrefs/Gamma 等招牌案例背书。

局限:

  • 生产级扩展(鉴权、水平扩展、持久化选型)仍要自己做;
  • Node.js 性能天花板;
  • 只解决 Y.Doc 文本协同,白板/富媒体协同要自建;
  • 长期路线受 Tiptap 商业方向影响。

五、谁该用

要做带实时协同的文档/笔记/评论/白板类产品、又不想自己啃 CRDT 的团队——Hocuspocus 是目前最省事的自托管答案,预算够就直接上 Tiptap Collab 云。做超高并发协同网关、或非文本类协同(CAD、设计画布)的,它不是终点。如果你只是做一个不需要多人协同的编辑器,别为了”未来可能用得上”提前引入它。

参考来源