automerge/automerge-js
2022-06-07 14:46:19 +02:00
..
config clean up lint, simplify package, hand write an index.d.ts 2022-05-23 19:04:31 +02:00
examples/webpack clean up lint, simplify package, hand write an index.d.ts 2022-05-23 19:04:31 +02:00
src clean up lint, simplify package, hand write an index.d.ts 2022-05-23 19:04:31 +02:00
test clean up lint, simplify package, hand write an index.d.ts 2022-05-23 19:04:31 +02:00
.eslintignore tslint to eslint 2022-05-22 13:53:11 -04:00
.eslintrc.cjs tslint to eslint 2022-05-22 13:53:11 -04:00
.gitignore able to build npm package 2022-05-22 13:53:11 -04:00
LICENSE able to build npm package 2022-05-22 13:53:11 -04:00
package.json clean up lint, simplify package, hand write an index.d.ts 2022-05-23 19:04:31 +02:00
README.md README 2022-05-23 19:25:23 +02:00
tsconfig.json merge OpObserver into AutoCommit 2022-06-07 14:46:19 +02:00
tslint.json convert automerge-js to typescript 2022-05-22 13:53:11 -04:00

Automerge JS

This is a reimplementation of Automerge as a JavaScript wrapper around the "automerge-wasm".

This package is in alpha and feedback in welcome.

The primary differences between using this package and "automerge" are as follows:

  1. The low level api needs to plugged in via the use function. The only current implementation of "automerge-wasm" but another could used in theory.
import * as Automerge from "automerge-js"
import * as wasm_api from "automerge-wasm"

// browsers require an async wasm load - see automerge-wasm docs
Automerge.use(wasm_api)
  1. There is no front-end back-end split, and no patch format or patch observer. These concepts don't make sense with the wasm implementation.

  2. The basic Doc<T> object is now a Proxy object and will behave differently in a repl environment.

  3. The 'Text' class is currently very slow and needs to be re-worked.

Beyond this please refer to the Automerge README for further information.