→ Connect UI: relay-connect-web
→ BitMacro: bitmacro.io
BitMacro Connect is the product name; the npm package is @bitmacro/relay-connect. TypeScript SDK for NIP-46 (Nostr Connect) and NIP-07 used with BitMacro Relay Manager: relay-api /signer, optional relay-agent, and browser extensions.
Reference app (Next.js): relay-connect-web
| Package | Role |
|---|---|
@bitmacro/relay-connect |
This repo — reusable client logic |
relay-connect-web |
Minimal UI + Next.js proxy to relay-api |
relay-api |
Central hub (private in production) |
Public API grows as logic is extracted from relay-connect-web and consumers like relay-panel.
npm install @bitmacro/relay-connectimport {
RELAY_CONNECT_PRODUCT_NAME,
RELAY_CONNECT_VERSION,
relayConnectLog,
setRelayConnectLogSink,
} from "@bitmacro/relay-connect";
console.log(RELAY_CONNECT_PRODUCT_NAME, RELAY_CONNECT_VERSION); // BitMacro Connect — marketing nameThe SDK does not assume console. Register a sink once; your UI can append entries to state, forward to analytics, or print:
import {
relayConnectLog,
setRelayConnectLogSink,
type RelayConnectLogEntry,
} from "@bitmacro/relay-connect";
setRelayConnectLogSink((entry: RelayConnectLogEntry) => {
// entry.product === "BitMacro Connect"
// entry.package === "@bitmacro/relay-connect"
myPanel.push(entry);
});
relayConnectLog("info", "Custom flow step", { step: "pairing" });Optional second argument: setRelayConnectLogSink(sink, { minLevel: "warn" }). Call setRelayConnectLogSink(null) to detach.
npm install
npm run typecheck
npm run buildMIT — see LICENSE.