automerge/automerge-backend-wasm
Andrew Jeffery 641fd11703
Change init to new and add defaults (#130)
Structs should use `new` for the constructor name and implement
`Default` where they can.
2021-05-14 21:35:09 +01:00
..
scripts Bump interop hash and swap sent_hashes set for map in js 2021-04-24 14:25:31 -07:00
src Change init to new and add defaults (#130) 2021-05-14 21:35:09 +01:00
test Add proptest for serialization 2021-01-14 12:30:25 -05:00
tests cargo fmt --all (#30) 2020-11-08 14:47:18 +00:00
.gitignore add js interop testing (#91) 2021-04-07 16:54:51 +01:00
Cargo.toml Remove automerge bench harness (#106) 2021-04-27 10:30:07 +01:00
GOALS_AND_ISSUES.md Update GOALS_AND_ISSUES.md 2020-04-16 11:31:08 -04:00
LICENSE tools for making an asmjs version 2020-04-05 10:22:45 -07:00
package.json add js interop testing (#91) 2021-04-07 16:54:51 +01:00
package.mjs.json reorg file for new package 2021-02-18 16:41:20 -05:00
package.pkg.json reorg file for new package 2021-02-18 16:41:20 -05:00
README.md Fix types in wasm/README.md (#66) 2021-03-27 11:12:50 +00:00
yarn.lock Bump lodash from 4.17.20 to 4.17.21 in /automerge-backend-wasm (#119) 2021-05-11 10:21:33 +01:00

automerge-backend-wasm

This is a wrapper for the rust implementation of automerge-backend to be used with Automerge.

Using

You can require this synchronously as a CommonJS module or import it as a ES6 module

let Automerge = require("automerge")
let Backend = require("automerge-backend-wasm")
Automerge.setDefaultBackend(Backend)
import * as Automerge from "automerge"
import * as Backend from "automerge-backend-wasm"
Automerge.setDefaultBackend(Backend)

Note that the first uses a synchronous filesystem load of the wasm and will not be transferable to a browser bundle. The second uses ES6 wasm import statements which should work in all modern browsers but require a '--experimental-wasm-modules' flag on nodejs (v13 on) unless you pack/bundle the code into compatible format.