Oh and I remember now using the wasm version of their client side code also. To compare performance.
That’s awesome! Sounds like using the Rust NIF turned out to be the more performant solution between the two?
The comparison was between the JS and the wasm version of the Automerge client side library. I actually ended up never benchmarking the two . So I don’t know how big the difference is. But probably the Automerge community has made some comparisons in the process of building the wasm implementation. But not sure if that info is publicly available.
@coen.bakker This sounds cool! Any chance of open-sourcing the Rust NIF? How much effort was it to wrap Automerge?
Does this use any database?
Hi @andreaa, the app I built uses PostgreSQL as the database on the server-side. It also stores data locally in the browser’s IndexedDB, LocalStorage, and SessionStorage.
I just saw that someone created a wrapper for y-crdt (the Rust library) in elixir: GitHub - satoren/y_ex: Yjs port for Elixir
Here is the announcement post on the YJS forum: Yrs Elixir Bindings - #3 by dmonad - Show - Yjs Community
That beeing said: thanks a ton for creating the example of combining yjs with svelte and live_view. It was a great read and I learned a lot from it
Whoa, thanks for sharing! I’ll definitely check it out when I get the chance.
It’s also awesome that the creator of Yjs mentioned he’d add the project to the Yjs README. Hopefully, that will get more people to try it out.
And thanks for the kind words about the Yjs/Svelte/LiveView example! I’m really glad it was helpful.