A WebSocket-based implementation of the 'automerge-repo' synchronization protocol used by 'sync.automerge.org'. Acts as a sync server, enabling 'R' to serve as a synchronization hub for 'Automerge' clients in 'JavaScript', 'Rust', and other languages, and as a client for fetching, editing, and synchronizing documents hosted on remote servers.
sync_server()Create a new sync server with $start() and
$close() methods
create_document()Create a new document
get_document()Retrieve a document by ID
list_documents()List all document IDs
generate_document_id()Generate a new document ID
The server implements the automerge-repo sync protocol over WebSockets. Messages are CBOR-encoded and include:
Handshake messages for connection establishment
Document synchronization messages
Transient messages forwarded without persistence
Error notifications
# Create and start a server
server <- sync_server()
server$start()
server$url# Stop when done server$close()
Maintainer: Charlie Gao [email protected] (ORCID)
Authors:
Charlie Gao [email protected] (ORCID)
Other contributors:
Posit Software, PBC (ROR) [copyright holder, funder]
Useful links: