DocCollab 快速开始
DocCollab是一个开源的在线协同富文本文档编辑系统,提供类似飞书文档的多人实时协作体验。
功能特性
- 实时协同编辑:基于Yjs和CRDT算法,支持多人同时编辑文档
- 富文本编辑:支持Markdown语法、代码块高亮、格式化工具栏等功能
- 文件夹管理:支持创建、编辑、删除文件夹,组织文档
- 文档管理:支持文档创建、编辑、删除等基本操作
- 协同空间权限管理:支持用户选择是否开放协同空间,开放后其他用户进入协同空间一起编辑协同空间里面的文档
- 用户系统:支持用户注册、登录
- 版本历史:支持查看文档修改历史
- 评论管理:支持文档评论、处理评论等互动功能
项目部署
环境要求
- Node.js 18+
- MongoDB 6.0+
- pnpm 10.0+
安装
bash
# 克隆项目
git clone https://github.com/byteGanYue/DocCollab.git
cd DocCollab
# 安装依赖
pnpm install启动项目
bash
# 启动前端应用
pnpm dev:doc-web
# 启动后端服务
cd packages/doc-server
pnpm start:dev
# 启动协同编辑服务器
cd packages/doc-editor
node server.js
# 启动文档站点(可选)
pnpm docs:dev快速使用
- 启动项目后,在浏览器中访问本地地址:localhost:5173 进入登录页面
- 注册账号或使用默认账号登录
- 进入首页后,可以看到文档列表和目录结构
- 点击"新建文档"按钮创建新文档
- 在编辑器中进行内容创作,支持多种格式化操作
- 分享文档链接给其他用户实现多人协同编辑
基本功能说明
编辑器工具栏
编辑器顶部工具栏提供以下功能:
- 文本格式化:加粗、斜体、下划线、删除线等
- 段落格式:标题、列表、引用、代码块等
- 文档操作:保存、导出等
协同编辑
协同编辑功能具有以下特点:
- 实时同步:用户的编辑内容会实时同步给所有协作者
- 光标跟踪:可以看到其他用户的光标位置和选区
- 冲突解决:基于CRDT算法自动解决编辑冲突
技术支持
如有问题,请联系:
- GitHub Issues: https://github.com/byteGanYue/DocCollab/issues
