花3个月时间,写了一款协同文档编辑器

之前和大家分享了我实现的 pxcharts 多维表格的产品功能和技术方案:

失业半年,写了一款多维表格编辑器pxcharts

pxcharts-pro, 支持百万数据渲染的多维表格编辑器

花了3个月时间,又写了一款协同文档编辑器------px-doc。接下来就和大家分享一下这款编辑器。

px-doc协同文档介绍

px-doc 是一款开箱即用的协同文档编辑器,支持图文和复杂表格编辑。

技术上我采用组件化的设计模式,Vue3 作为前端UI层,可以轻松集成到各种复杂系统。在协同实现上,目前市面上主要有两种常用算法:OT算法和CRDT算法。我在实现协同上采用了CRDT算法。

演示地址:flowmix.turntip.cn/px-editor

CRDT协同算法介绍

上面是我总结的CRDT的算法原理图,接下来和大家分享一下CRDT算法的优势。

CRDT(无冲突复制数据类型)作为支撑实时协同编辑的核心算法,其优势恰好能解释 px-doc 等工具实现 "多人零冲突协作" 的底层逻辑,主要体现在以下几点:

  1. 真正的去中心化:无需依赖中心服务器实时协调,各终端可独立编辑,后续通过数据合并达成一致。这让 px-doc 即便在网络波动时,用户仍能顺畅操作,避免因服务器延迟导致的编辑卡顿。
  2. 冲突自动消解:面对多人同时修改同一内容的场景,CRDT 能通过预设规则(如时间戳、节点 ID 优先级)自动合并操作,既不丢失任何修改,也无需用户手动解决冲突。比如两人同时编辑同一段落,算法会智能拼接内容,而非粗暴覆盖。
  3. 历史记录完整可追溯:每一次修改都会被编码为不可变操作日志,支持任意版本回溯。这让 px-doc 的 "自动保存" 和 "版本管理" 功能更可靠,用户能精准找回任一时刻的文档状态。
  4. 低带宽适配性:仅需同步操作指令而非完整文档,大幅减少数据传输量。即便在弱网环境下,也能保证协作流畅性,尤其适合远程团队或跨地域协作场景。

下面和大家分享一下 px-doc 编辑器的功能。

px-doc协同文档功能介绍

pc-doc协同文档的功能列表如下:

  • 支持文档撤销重做
  • 图文编辑
  • 支持项目列表
  • 支持复杂表格
  • 支持字体和字体样式设置
  • 支持有序和无序列表
  • 支持代码块
  • 支持引用
  • 支持分割线
  • 支持多人协同编辑
  • 支持导出
  • 支持文档分享
  • 支持一键生成文档目录大纲

后续还会支持迭代,如果大家感兴趣可以参考体验一下。

演示地址:flowmix.turntip.cn/px-editor

如果大家有更好的建议,欢迎留言区交流反馈~

相关推荐
小O的算法实验室20 小时前
2026年ASOC,基于深度强化学习的无人机三维复杂环境分层自适应导航规划方法,深度解析+性能实测
算法·无人机·论文复现·智能算法·智能算法改进
于慨20 小时前
Lambda 表达式、方法引用(Method Reference)语法
java·前端·servlet
石小石Orz20 小时前
油猴脚本实现生产环境加载本地qiankun子应用
前端·架构
从前慢丶20 小时前
前端交互规范(Web 端)
前端
像我这样帅的人丶你还20 小时前
别再让JS耽误你进步了。
css·vue.js
@yanyu66620 小时前
07-引入element布局及spring boot完善后端
javascript·vue.js·spring boot
CHU72903520 小时前
便捷约玩,沉浸推理:线上剧本杀APP功能版块设计详解
前端·小程序
GISer_Jing20 小时前
Page-agent MCP结构
前端·人工智能
王霸天21 小时前
💥别再抄网上的Scale缩放代码了!50行源码教你写一个永不翻车的大屏适配
前端·vue.js·数据可视化
小领航21 小时前
用 Three.js + Vue 3 打造炫酷的 3D 行政地图可视化组件
前端·github