Changelog — Hapbeat JavaScript SDK
@hapbeat/sdk follows Keep a Changelog and Semantic Versioning.
[Unreleased]
Section titled “[Unreleased]”- Added
play(id, { pan })(-1left only,0center,+1right). Command events serialize pan in PLAY; Clip events apply it in the source mixer. - Added endpoint-scoped
StreamHub: sources at one endpoint normalize and mix as 16 kHz stereo PCM16, while different endpoints use independent sessions and cursors. streamPcm()andopenStream()return source-levelStreamPlaybackwith Gain, Pan, Loop, Status, and idempotentstop().- Added
playStream(eventId, opts)for manifest Clips with a synchronous proxy handle during initial WAV loading.
Changed
Section titled “Changed”- Stream never broadcasts as a fallback. Finite unresolved sources are
Deferred; live input drops rather than accumulating delayed data. - Browser Helper stream messages now contain exact endpoint IP and full address target. Empty sessions linger 300 ms; route-only endpoint changes preserve session / offset.
- Removed legacy single-session
ClipStreamer/LiveStreamimplementations.
Validation
Section titled “Validation”npm run buildand 52 transport / multi-stream / broadcast tests passed. Device and React Native hardware verification remains pending.
[0.4.0] - 2026-08-09
Section titled “[0.4.0] - 2026-08-09”- Ported multi-homed PC discovery and connection-routing fixes for Node / React Native direct UDP transport.
[0.3.0] - 2026-08-03
Section titled “[0.3.0] - 2026-08-03”- Added SDK transport and playback improvements.
[0.2.1] - 2026-06-29
Section titled “[0.2.1] - 2026-06-29”- Maintenance release.
[0.2.0] - 2026-06-29
Section titled “[0.2.0] - 2026-06-29”- Expanded JavaScript SDK capabilities.
[0.1.0] - 2026-06-25
Section titled “[0.1.0] - 2026-06-25”- Initial public release.