• Stars
    star
    14,768
  • Rank 1,911 (Top 0.04 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created about 7 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A JSON-like data structure (a CRDT) that can be modified concurrently by different users, and merged again automatically.

Automerge logo

Deprecation Notice

Automerge now has a shiny new implementation at https://github.com/automerge/automerge. This repository is the original pure javascript implementation. All development effort has shifted to the new implementation which is written in Rust and so can easily be ported to other platforms.

Original Readme

💬 Join the Automerge Slack community

Build Status Browser Test Status

Automerge is a library of data structures for building collaborative applications in JavaScript.

Please see automerge.org for documentation.

For a set of extensible examples in TypeScript, see automerge-repo

Setup

If you're using npm, npm install automerge. If you're using yarn, yarn add automerge. Then you can import it with require('automerge') as in the example below (or import * as Automerge from 'automerge' if using ES2015 or TypeScript).

Otherwise, clone this repository, and then you can use the following commands:

  • yarn install — installs dependencies.
  • yarn test — runs the test suite in Node.
  • yarn run browsertest — runs the test suite in web browsers.
  • yarn build — creates a bundled JS file dist/automerge.js for web browsers. It includes the dependencies and is set up so that you can load through a script tag.

Meta

Copyright 2017–2021, the Automerge contributors. Released under the terms of the MIT license (see LICENSE).

More Repositories

1

automerge

A JSON-like data structure (a CRDT) that can be modified concurrently by different users, and merged again automatically.
JavaScript
3,205
star
2

hypermerge

Build p2p collaborative applications without any server infrastructure in Node.js
TypeScript
1,277
star
3

pushpin

A collaborative corkboard app
TypeScript
619
star
4

trellis

Trello clone / sample app for Automerge persistence library
JavaScript
497
star
5

automerge-repo

TypeScript
401
star
6

mpl

a p2p document synchronization system for automerge
JavaScript
278
star
7

autosurgeon

Rust
249
star
8

pixelpusher

pushin' pix
JavaScript
219
star
9

automerge-swift

Swift language bindings presenting Automerge
Swift
205
star
10

automerge-swift-archived

Wrapper around Swift types that can be modified concurrently by different users, and merged again automatically (a CRDT).
Swift
159
star
11

automerge-go

Go
79
star
12

MeetingNotes

An example application that uses Automerge-Swift to provide collaborative note taking for meetings.
Swift
50
star
13

automerge-py

Rust
35
star
14

automerge-perf

Performance tests for Automerge
JavaScript
35
star
15

automerge-repo-rs

Rust
31
star
16

pinecone

An example Electron + React + Hypermerge application designed to be a starting point for your own ideas.
TypeScript
29
star
17

automerge-net

Network examples for Automerge
JavaScript
25
star
18

automerge-codemirror

TypeScript
21
star
19

automerge-prosemirror

TypeScript
20
star
20

automerge-java

Java
15
star
21

automerge.github.io

JavaScript
14
star
22

automerge-connection

A generic network synchronisation protocol for Automerge
JavaScript
12
star
23

sync-server

Simple WebSocket server for syncing Automerge clients
JavaScript
12
star
24

automerge-repo-swift

Extends the Automerge-swift library, providing support for working with multiple Automerge documents at once, with pluggable network and storage providers.
Swift
11
star
25

automerge-repo-sync-server

JavaScript
9
star
26

contaaacts

An automerge-swifter demo app
Swift
5
star
27

pixelpusherd

An archiver daemon for pixelpusher
JavaScript
5
star
28

automerge-swift-backend

A XCFramework wrapper for the rs-backend
Shell
5
star
29

automerge-repo-quickstart

TypeScript
5
star
30

prosemirror-quickstart

An example of using Automerge + Prosemirror
TypeScript
3
star
31

automerge-repo-network-peerjs

Network adapter for automerge-repo using peerjs
TypeScript
1
star