Design and Performance Evaluation of a CRDT-Based Framework for Conflict-Free Real-Time Collaborative Web Applications

Shared documents, whiteboards, design canvases and planning boards all rest on the same promise: several people can change the same thing at the same time, over flaky connections, and nobody ever ends up looking at a different version from everyone else. Most production tools keep that promise with operational transformation (OT), where a central server rewrites every concurrent edit before it is applied. That works, but it makes the server the bottleneck and turns offline work into a special case. Conflict-free replicated data types (CRDTs) take the server out of the correctness story, since every replica converges on its own, yet the textbook versions carry a reputation for bloated metadata, tombstones that never go away and full-state exchanges on every reconnect. In this paper we describe a browser-oriented CRDT framework built to shed those costs, and we measure how far it succeeds. The framework pairs a run-length encoded replicated growable array for text with an observed-remove map, a last-writer-wins register and a counter for structured state, all sharing one identifier scheme. Replicas synchronise by exchanging version-vector digests and then only the deltas the other side lacks, over WebSocket or WebRTC, with a causal buffer for out-of-order arrivals. A persistence layer snapshots the log and collects tombstones once a stable version vector shows that no replica can still need them. On an emulated testbed with up to 64 clients we compared the framework with a Jupiter-style OT server, a server-authoritative last-writer-wins baseline and a stripped-down per-character CRDT. With 16 clients on an 80 ms link, remote edits converged in 94 ms at the median and 146 ms at the 99th percentile, compared with 121 ms and 243 ms for OT, and the relay carried 41,000 operations per second. After 500,000 edits the stored document was 1.9 times the size of its visible text, where the naive CRDT reached 38 times and retained OT history 27 times. A client returning from a ten-minute outage was fully reconciled in 171 ms after exchanging 104 KB. No divergence appeared across 1.2 million randomised test interleavings. We close with practical guidance for teams choosing a collaboration engine.

Authors

Publication Details

Journal
Zenodo (CERN European Organization for Nuclear Research)
Published
2026-09-17
DOI
https://doi.org/10.5281/zenodo.22811537
Primary Topic
Distributed systems and fault tolerance
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
article

Design and Performance Evaluation of a CRDT-Based Framework for Conflict-Free Real-Time Collaborative Web Applications

NIHAR K NAIK
Zenodo (CERN European Organization for Nuclear Research)
Distributed systems and fault tolerance
article

Design and Performance Evaluation of a CRDT-Based Framework for Conflict-Free Real-Time Collaborative Web Applications

NIHAR K NAIK
article en

Abstract

Shared documents, whiteboards, design canvases and planning boards all rest on the same promise: several people can change the same thing at the same time, over flaky connections, and nobody ever ends up looking at a different version from everyone else. Most production tools keep that promise with operational transformation (OT), where a central server rewrites every concurrent edit before it is applied. That works, but it makes the server the bottleneck and turns offline work into a special case. Conflict-free replicated data types (CRDTs) take the server out of the correctness story, since every replica converges on its own, yet the textbook versions carry a reputation for bloated metadata, tombstones that never go away and full-state exchanges on every reconnect. In this paper we describe a browser-oriented CRDT framework built to shed those costs, and we measure how far it succeeds. The framework pairs a run-length encoded replicated growable array for text with an observed-remove map, a last-writer-wins register and a counter for structured state, all sharing one identifier scheme. Replicas synchronise by exchanging version-vector digests and then only the deltas the other side lacks, over WebSocket or WebRTC, with a causal buffer for out-of-order arrivals. A persistence layer snapshots the log and collects tombstones once a stable version vector shows that no replica can still need them. On an emulated testbed with up to 64 clients we compared the framework with a Jupiter-style OT server, a server-authoritative last-writer-wins baseline and a stripped-down per-character CRDT. With 16 clients on an 80 ms link, remote edits converged in 94 ms at the median and 146 ms at the 99th percentile, compared with 121 ms and 243 ms for OT, and the relay carried 41,000 operations per second. After 500,000 edits the stored document was 1.9 times the size of its visible text, where the naive CRDT reached 38 times and retained OT history 27 times. A client returning from a ten-minute outage was fully reconciled in 171 ms after exchanging 104 KB. No divergence appeared across 1.2 million randomised test interleavings. We close with practical guidance for teams choosing a collaboration engine.

Zenodo (CERN European Organization for Nuclear Research)
Sustainable cities and communities
Openalex Percentile: Top 8%
Distributed systems and fault tolerance
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

Design and Performance Evaluation of a CRDT-Based Framework for Conflict-Free Real-Time Collaborative Web Applications — NIHAR K NAIK · Zenodo (CERN European Organization for Nuclear Research) (2026) | TGRS Research Map | TGRS