Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pairing with a JavaScript library? #100

Open
greglearns opened this issue Apr 6, 2018 · 2 comments
Open

pairing with a JavaScript library? #100

greglearns opened this issue Apr 6, 2018 · 2 comments

Comments

@greglearns
Copy link

greglearns commented Apr 6, 2018

I'd love to use this with a JavaScript front-end. Any recommendations for having it work with a JavaScript client over HTTP?

Also, are you basing this library on CvRDTs (convergent replicated data types) or CmRDTs (commutative replicated data types)?

@alex-shapiro
Copy link
Owner

Right now there's no JS counterpart to Ditto. However, it should be possible to compile Ditto to WebAssembly with Rust's wasm32-unknown-unknown target, and one of my medium-term goals is to write a more ergonomic JS wrapper for the wasm output.

Ditto CRDTs are hybrids, that is, both CvRDTs and CmRDTs. You can replicate ops or changes as you see fit (via execute_op or via merge). Each form of replication comes with its own advantages and drawbacks. Op-based replication is typically more bandwidth-efficient but forces some restrictions on ordering (more in the README). State-based replication via state is typically less efficient, but it has no ordering restrictions.

@mbalex99
Copy link

I'm very much interested in helping to contribute a JS-WASM effort!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants