CRDTs #31
Replies: 3 comments 1 reply
-
Yep, I am game for this, though I've had to do a bunch of background reading. Still not sure of quite the right strategy yet... but in our favor we have the fact that TinyBase can listen and update on a cellular granularity, reducing the likely conflicts per row or table. eg https://archive.jlongster.com/using-crdts-in-the-wild seems like a worthy avenue. (In the meantime I want to get some codegen ORM functionality out in a v2.2-ish release, so we have time to discuss) |
Beta Was this translation helpful? Give feedback.
-
OK, now that v2.2 is out, I want to start thinking about this. In our favor:
Against us:
PremiseMy starting point is @jlongster's Actual approach (since I am a mere mortal): a no dependency HLC and a growing log of last-write-wins. https://www.dotconferences.com/2019/12/james-long-crdts-for-mortals The current checkpoints module is an example of keeping a sequence of cell-level changes like that (and it handles deletes a charm). But I need to think about what a flexible API to get or replay such a log in a CRDT context would look like. Plan:
I've started a dedicated disposable repo for these half-baked ideas. https://github.com/tinyplex/tinysync |
Beta Was this translation helpful? Give feedback.
-
v4.0 supports Yjs, Automerge, and cr-sqlite! |
Beta Was this translation helpful? Give feedback.
-
I was reading https://news.ycombinator.com/item?id=32873172 and wanted to start a discussion here.
CRDT on TinyBase would be an absolutely killer feature. I have a relatively new app that is client side only and implemented in Dexie. It's in private beta. I decided on Dexie just before TinyBase was released but I've been following along with TinyBase and watching progress.
You mentioned v3 might have CRDTs. Is this anything you're working on at the moment. Is there anything I could do to help out with this effort?
Beta Was this translation helpful? Give feedback.
All reactions