Catalog npm
PACKAGE EXPLORERView in registry

1-z-2

npm

1-z-2 relay SDK — one file, zero dependencies, browsers and Node 22+. Published as an integrity mirror: at matching versions client.js is byte-identical to GET /sdk.js on any 1-z-2 relay.

app-to-appclaude-codecursorgenerated-appslovablepersonal-softwarerelayschema-translationshare-between-appsvibe-coding
Versions collected7
Direct dependencies0From release 1.6.0
Last observed20 Oct, 17:56 UTC

README

Current package documentation

1-z-2

The SDK for the 1-z-2 relay network — one file, zero dependencies, runs in browsers and Node 22+.

Why this package exists

You don't normally install this. A 1-z-2 app vendors the SDK straight from its relay:

curl -fsSL https://YOUR-RELAY/sdk.js -o relay-client.js

This package is the integrity mirror: at matching versions, its client.js is byte-identical to what any 1-z-2 relay serves at GET /sdk.js. Because npm is a registry neither you nor the relay operator controls, a vendored copy can be checked against it.

Verify a vendored copy

V=$(grep -m1 SDK_VERSION relay-client.js | cut -d'"' -f2)
npm pack 1-z-2@$V
tar -xOf 1-z-2-$V.tgz package/client.js | diff - relay-client.js

No output means the bytes match.

Use

import { RelayClient } from "./relay-client.js";

const relay = await RelayClient.connect({
  handle: "you",
  relayUrl: "https://YOUR-RELAY",
});
await relay.publish({
  name: "recipe",
  direction: "send",
  description: "a cooking recipe with ingredients and steps",
  example: { title: "Pancakes", ingredients: ["2 cups flour"], steps: ["Mix", "Fry"] },
});
const result = await relay.send("jane", "recipe", payload);
relay.onReceive((msg) => {
  // msg.payload arrives already translated into YOUR shape
});

The full integration guide is served by every relay at GET /integrate.md. An app that is not JavaScript needs no SDK at all: GET /integrate-http.md gives the same steps as plain, signed web requests. The operator's claims — each paired with a way to check it — are at 1-z-2.com/trust.

Types

client.d.ts ships in this package and declares the whole public surface of client.js. Every relay also serves it beside the SDK, so a vendored copy can have types without npm:

curl -fsSL https://YOUR-RELAY/sdk.d.ts -o relay-client.d.ts

Saved next to relay-client.js, TypeScript picks it up by name.

License

In one sentence: use this file and embed it in your own application, free of charge and without asking, as long as you do not modify it or republish it as a separate work. This package is the one stated exception to "no republishing", because it exists to verify vendored copies. Full terms in LICENSE. © 2026 Zugaba Limited.

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 7

Collected releases
VersionPublishedDirect dependenciesOpen version
1.6.0Registry latest22 Sept 20260
1.5.121 Sept 20260
1.5.020 Sept 20260
1.4.013 Sept 20260
1.3.09 Sept 20260
1.2.08 Sept 20260
1.1.17 Sept 20260

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 17:56 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:c184be94f93fe600506b688d1114a0420ff9b7e7cde16fe47e2669d4e87b4c73