Ysr (read: wiser) is yet another implementation of Yjs/Yrs Conflict-free Replicated Data Type libraries, used for building collaborative applications. The twist here is that this time we're moved from in-memory database into one that lies…
Replacing Yjs move feature
As we're approaching the new major version of Yjs (v14), there are few breaking changes worth talking about. While most of them concern the API, a binary format itself remains stable (so don't be afraid, your…
PEON - Prefixed Entry Object Notation
In this blog post we'll going to introduce a new data serialization format. This one focuses on enabling decoding objects as series of incremental object changes, which can be streamed over and emitted/applied partially over time. It…
Conflict-free Database over Virtual File System
This time we're going to cover a new implementation of persistent key value store, using Conflict-free Replicated Data Types (CRDTs) to enable multi-process writes. Moreover, this approach enables shift of replication protocol from custom made gossip…
Is Rust a good choice for business apps?
While you may hear a lot of harsh words about Rust is this rant, that doesn't have to mean it's a bad language. Rephrasing the classic: there are two types of programming languages: ones that people…
Reading tens of thousands of Redis Streams at the time
In this blog post we'll discuss challenges and solutions for concurrent reading from massive amount of Redis streams without running into limitations of the Redis protocol or our machine resources. First let's describe our problem. We…
Can Yrs fit my table?
In this blog post we'll design a collaborative 2D table structure using yrs - Rust port of popular yjs conflict-free replicated data types library for creating real-time, local-first apps. We'll also cover some optimizations…
Non-interleaving Linear Sequence (LSeq) CRDT
Today we're going to jump into LSeq - one of the famous text-editing conflict-free replicated data types we briefly introduced in the past blog posts. This time we're aiming for fixing one of the popular…