Skip to content

Context

Overview

This document describes the context for a Collaborative Document Editor system, similar to Google Docs, designed to support both online and offline editing. The system is intended to allow multiple users to edit the same document simultaneously while ensuring data consistency and conflict resolution.

The documentation starts from an initial suggested implementation, analyzing potential failure points and gradually proposing improvements and strategies to support a more robust and scalable solution.

Key Objectives

Scope

  • Collaborative editing of rich-text documents with real-time synchronization.
  • Conflict-free merging of offline and online edits.
  • Audit logging of document access and changes.
  • Support for large-scale concurrent users without sacrificing performance.

Assumptions

  • Users may experience connectivity failures.
  • Backend services are deployed globally to reduce latency for end users.
  • CRDT algorithms LSEQ to handle concurrent edits.

Author

Plinio Duarte