zx
banner
zxch3n.com
zx
@zxch3n.com
Founder of @Loro.dev
https://github.com/zxch3n
Reposted by zx
The Loro Protocol repo is now open source!

It contains documentation for the wire protocol, along with TypeScript and Rust implementations of WebSocket clients and servers.

The protocol allows reusing a single connection to join multiple CRDT rooms, such as Loro documents or the Ephemeral Store.
October 30, 2025 at 2:45 PM
Loro Inspector is here! Now you can directly browse the current state and complete edit history of your Loro documents in the browser. You can also use this tool to time travel to any version in the history of your Loro document.
April 30, 2025 at 7:28 AM
Reposted by zx
Just implemented the first working attempt at an Entity-Component API on top of the @loro.dev CRDT.

It's a super work-in-progress start to the new Leaf SDK that will be powering @roomy.chat and a.weird.one.
March 8, 2025 at 10:55 PM
Reposted by zx
Personal software has been trending recently.

I enjoyed reading @leerob.com's "personal software" and @edmarferreira.bsky.social 's "selfish software". Hope you enjoy them too!

xuanwo.io/links/2025/0...
February 7, 2025 at 4:25 AM
Reposted by zx
Diving into Loro on stream today. Local-first, CRDT library written in Rust. Excited to explore it deeper! Starting in one hour.
Loro Is Local-First State With CRDT
This lib has some big promises. Let's dive in! Wait, is it written in Rust? https://github.com/loro-dev/lorogoing inhttps://github.com/jbolda/local-first#liv...
youtube.com
January 28, 2025 at 3:30 PM
It's so hard to feel this warmth from interactions on social platforms these days 🥹
January 16, 2025 at 6:26 PM
Reposted by zx
The animated gifs and illustrations in @loro.dev's docs are delightful. Finding these docs to be an enjoyable and readily comprehensible introduction to CRDTs. Thanks @zxch3n.com!
January 14, 2025 at 9:55 PM
Reposted by zx
New version control primitives have been added to Loro:
- diff(from, to): calculate the differences between any two versions
- revertTo(version): Generate ops to revert to the target version
- applyDiff(diff): Apply differences

You can use them to implement functions like git squash and revert.
January 9, 2025 at 8:48 AM
just watched DJs coding Haskell live?!
December 12, 2024 at 5:26 PM
Reposted by zx
Ok, a rundown of how we get p2p ATProtocol going:

1. Run *standard* ATProto services, locally
2. Use p2p to holepunch TCP connections
3. Add a thin layer for peering management

Bundle all that up in an app, and we have a recipe for adding resilience & scaling to Bluesky. 🧵 teim:
November 29, 2024 at 7:06 PM
The slides for the talk are available here: loro-slidev.vercel.app
Join us for #LoFi/21 on Tuesday, November 26th, 2024, @ 8 AM PST 👉🏽 lofi.so. We have yet another exciting lineup featuring Felicia Chang (x/@felchang) from x/@jamsockethq, Sahil Lalani (x/@SahilLalani0) and Zixuan Chen (x/@zx_loro) from x/@loro_dev
#localfirst #lofi #meetup
November 26, 2024 at 7:05 PM
Reposted by zx
Catch the deets at our upcoming LoFi/21 meetup 👉🏽 lofi.so
November 26, 2024 at 2:18 AM
Reposted by zx
Finished another skim through the eg-walker paper: arxiv.org/abs/2409.14252, can’t wait to try it out in loro.dev
Collaborative Text Editing with Eg-walker: Better, Faster, Smaller
Collaborative text editing algorithms allow several users to concurrently modify a text file, and automatically merge concurrent edits into a consistent state. Existing algorithms fall in two categori...
arxiv.org
November 24, 2024 at 1:13 PM
Reposted by zx
Join us for #LoFi/21 on Tuesday, November 26th, 2024, @ 8 AM PST 👉🏽 lofi.so. We have yet another exciting lineup featuring Felicia Chang (x/@felchang) from x/@jamsockethq, Sahil Lalani (x/@SahilLalani0) and Zixuan Chen (x/@zx_loro) from x/@loro_dev
#localfirst #lofi #meetup
November 15, 2024 at 2:40 PM
Reposted by zx
We are developing a local-first map community powered by ATProto - share your favorite cafes, discover your neighborhood, and explore new places wherever you go 🗺️☕️
I want to create an incubator that funds atproto/bluesky experimental projects to the tune of $5k-$10k dev grants.

I am sorely tempted to call it “Chemtrails”, because it seeds the ATmosphere

Hit me with your best ideas!
November 15, 2024 at 10:54 AM
Reposted by zx
Episode #17 is out.

Kyle Simpson on local-first identity, encryption, passkeys and authn.

www.localfirst.fm/17
#17 – Kyle Simpson: Local-first identity - localfirst.fm
A podcast about local-first software development.
www.localfirst.fm
November 12, 2024 at 1:14 PM
What happened to npm downloads?
November 12, 2024 at 3:31 AM
Myers diff may generate weird deltas like the following example. It will make concurrent text updates generate weird merge results. Any suggestions?

My current thought is to implement an A* search on top of the edit graph that punishes noncontinuous edits
November 7, 2024 at 4:50 PM
After revisiting and discussing this issue with @memoryandthought.me , I realized that I might be able to implement it on Loro while ensuring backward compatibility (but not forward compatibility). I will try to make a version to test.
zxch3n.com zx @zxch3n.com · Nov 6
You may experience data loss due to the following issues caused by incorrect usage of CRDTs libraries, regardless of whether you're using Loro, Automerge, or Yjs. Here is how to avoid them:
November 6, 2024 at 4:44 PM
You may experience data loss due to the following issues caused by incorrect usage of CRDTs libraries, regardless of whether you're using Loro, Automerge, or Yjs. Here is how to avoid them:
November 6, 2024 at 11:34 AM
Reposted by zx
🦋
November 6, 2024 at 6:19 AM
Reposted by zx
I've put together a starter pack for anyone interested in local-first!
Who else mostly writes about local-first?
go.bsky.app/KDasV5R
November 3, 2024 at 9:52 AM
AT Protocol 貌似也能合法地在大陆部署,因为审核是去中心化的,可以选择性收录账户和内容
November 2, 2024 at 10:09 AM
If an app needs to support end-to-end encryption, what kind of key management would provide the best UX? Considering that users are likely to forget passwords or lose key files.
November 1, 2024 at 6:12 PM
Reposted by zx
iroh's going to 1.0 in 2025!
October 28, 2024 at 4:08 PM