@hyperfrontend/network-protocol/node

Node.js Platform (src/node/)

This is a platform-specific entry point. Primary documentation is in src/lib/.

Overview

The node/ directory provides Node.js-specific implementations that:

  1. Import shared logic from lib/
  2. Inject Node.js-native dependencies (Node crypto module)
  3. Export ready-to-use factories for Node.js environments

Entry Points

PathDescription
node/v1v1 protocol with Node crypto encryption
node/channelChannel factory pre-wired with node sender/receiver
node/dataData factory with node crypto
node/packetPacket encryption/decryption with Node crypto
node/senderSender factory with node packet processing
node/receiverReceiver factory with node packet processing

Usage

// Import from node-specific entry points
import { createProtocol } from '@hyperfrontend/network-protocol/node/v1'
import { createChannel } from '@hyperfrontend/network-protocol/node/channel'
import { createLogger } from '@hyperfrontend/logging'

const logger = createLogger({ level: 'info' })
const protocolProvider = createProtocol(logger, 60)

// Use IPC for transport (e.g., child_process)
const channel = createChannel(
  'ipc-channel',
  (packet) => process.send?.(packet),
  (packet) => handleMessage(packet),
  protocolProvider
)

Integration Tests

Node.js integration tests use Jest with native Node.js crypto.

Documentation

For detailed documentation on each module, see the library core:

TopicLink
Module Documentationlib/README.md
Architecture GuideARCHITECTURE.md
Package OverviewREADME.md

Differences from Browser

AspectNode.jsBrowser
CryptoNode.js crypto moduleWeb Crypto API (crypto.subtle)
TransportIPC, sockets, process.sendpostMessage, MessageChannel
Test RunnerJest with jest.setup.tsJest with jest.setup.browser.ts
Test Suffix*.spec.ts*.browser.spec.ts

See Also

API reference for node is not available yet — rebuild docs to regenerate.