Comment by josephg
3 years ago
Very cool! This looks very similar to what we're doing with the braid spec[1], though I really like how clear and concise your examples are! This is a great little website.
Some differences between our approaches:
- I think its a good idea to support arbitrary patch formats via a content-type style field, just like we have different formats for images. This lets you use the same protocol for things like collaborative editors.
- For some data sets (like CRDTs), you want each change to be able to refer to multiple "parents".
- Your protocol is very JSON-y and not very HTTP-y. It looks like you're basically using JSON to express HTTP. Why not just use HTTP? One big downside of the JSON approach is that it makes it awkward to transmit binary patches. (Eg, 'patching' an image)
Feel free to reach out if you're up for a chat! Looks like we're working on the same problem.
[1] https://github.com/braid-org/braid-spec/blob/master/draft-to...
This made me all warm and fuzzy inside that nerds can still help other nerds even when we are on different teams. Hope y'all are able to share some ideas.