Registry / devops / automerge-repo-network-websocket

automerge-repo-network-websocket

JSON →
library0.1.0jsnpmunverified

Isomorphic WebSocket network adapter for Automerge Repo (CRDT-based collaborative data). Current stable version: 0.1.0. Alpha-stage package; part of the Automerge ecosystem for building local-first, real-time collaborative apps. Provides both client and server WebSocket implementations for Automerge Repo, leveraging isomorphic-ws for shared code between Node.js and browser. The server component is Node.js-only. Differentiates from raw WebSocket by integrating directly with Automerge Repo's sync protocol for document synchronization.

npm install automerge-repo-network-websocket
INSTALL
IMPORT
SIG · AUTOMERGE-REPO-NET
A
automerge-repo-network-websocket
devopsjavascriptv0.1.0
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

NodeWSServerAdapter
import { NodeWSServerAdapter } from 'automerge-repo-network-websocket'
import NodeWSServerAdapter from 'automerge-repo-network-websocket'
Named export, not default.
BrowserWebSocketClientAdapter
import { BrowserWebSocketClientAdapter } from 'automerge-repo-network-websocket'
const BrowserWebSocketClientAdapter = require('automerge-repo-network-websocket').BrowserWebSocketClientAdapter
CommonJS require is supported but ESM is preferred.
isomorphic-ws
import WebSocket from 'isomorphic-ws'
const WebSocket = require('ws')
Use isomorphic-ws for cross-platform compatibility.

Shows how to create an Automerge Repo instance with a WebSocket network adapter.

import { Repo } from 'automerge-repo' import { BrowserWebSocketClientAdapter } from 'automerge-repo-network-websocket' const wsUrl = process.env.WS_URL ?? 'ws://localhost:2402' const adapter = new BrowserWebSocketClientAdapter(wsUrl) const repo = new Repo({ adapters: [adapter] }) // repo is now connected to sync server; handle documents as usual
Debug
Known issues
gotchaNodeWSServerAdapter is not available in browser bundles; server code must run in Node.
fix
Use conditional imports or separate entry points for server and client.
affects: >=0.0.0
gotchaThe package is in alpha stage (0.1.0); APIs may change without major version bump.
fix
Pin to exact version and test upgrades carefully.
affects: 0.1.0
gotchaisomorphic-ws uses the native WebSocket in browsers and the 'ws' package in Node; ensure 'ws' is installed for Node environments.
fix
Add 'ws' as a dependency if running in Node.
affects: >=0.0.0
Errors
Common errors & fixes
Error: Cannot find module 'automerge-repo'
Missing peer dependency automerge-repo
fix
npm install automerge-repo
TypeError: WebSocket is not a constructor
Missing isomorphic-ws or 'ws' package in Node
fix
npm install isomorphic-ws ws
Error: NodeWSServerAdapter is not a function
Importing as default instead of named import
fix
Use import { NodeWSServerAdapter } from 'automerge-repo-network-websocket'
Upgrade
Version history
0.1.0latest on npm
Audit
Dependencies
automerge-reporequiredpeer dependency; provides the core Automerge Repo classes
isomorphic-wsrequiredrequired for WebSocket abstraction across Node and browser
Agent activity
12 hits · last 30 days
node
8
OpenAI (training)
2
Amazon
1
Resources
automerge-repo-network-websocket — npm install automerge-repo-network-websocket · libregistry