npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@wave-av/sdk

v2.1.3

Published

Official WAVE SDK - 34 API modules covering streaming, production, device management, analytics, content, monetization, and more

Readme

sdk

Official TypeScript SDK for the WAVE API — 42 API module subpaths covering streaming, production, device management, analytics, content, and monetization behind a single Wave client. Most modules are SDK-side TypeScript surface only; see capability statuses for what has a live fleet backend today.

kind domain lang visibility

docs · npm · repo · Docs · Status

This README is machine-generated from WAVE's grounded Single Source of Truth — every factual claim below traces to a resolver that npm run verify checks against the live repo and live endpoints. Nothing here is asserted without a receipt.


Quick start

npm install @wave-av/sdk
import { Wave } from "@wave-av/sdk";

const wave = new Wave({
  apiKey: process.env.WAVE_API_KEY!,
  organizationId: "org_123",
});

// Create and start a live stream
const stream = await wave.pipeline.create({
  title: "My Live Stream",
  protocol: "webrtc",
  recording_enabled: true,
});
await wave.pipeline.start(stream.id);

// Text-to-speech
const synthesis = await wave.voice.synthesize({
  text: "Hello from WAVE",
  voice_id: "voice_abc",
});

Capabilities

  • Pricing Pages — create/list/read tier manifests (pricing.wave.online/ hosted pages; scopes pricing:write/pricing:read)

| Capability | Status | | --- | --- | | Auto-captions, translation, burn-in via wave.captions | lib | | Video clips, exports, AI highlights via wave.clips | lib | | Monetization, subscriptions, tips, payouts via wave.creator (SDK TypeScript surface; no fleet backend yet) | planned | | Video editing, tracks, transitions, effects via wave.editor | lib | | Desktop Node fleet management, health, commands via wave.fleet (SDK TypeScript surface; no fleet backend yet) | planned | | x402 and MPP card-rail agent payments with scope-gate and settlement-guard, shipped at the WAVE gateway; reachable from the SDK today via the base WaveClient request methods (no dedicated wrapper module yet) | ga | | AI auto-directing (Autopilot), suggestions, overrides via wave.ghost (SDK TypeScript surface; no fleet backend yet) | planned | | Multi-region failover, replication, topology via wave.mesh (SDK TypeScript surface; no fleet backend yet) | planned | | Telephony bridging via wave.phone — core features are planned in the fleet SSOT, not yet shipped | planned | | Live stream lifecycle, protocols, recordings, viewer metrics via wave.pipeline | lib | | Podcast publishing/distribution via wave.podcast — core features are planned in the fleet SSOT, not yet shipped | planned | | Virtual Device Bridge (NDI/ONVIF/VISCA/Dante to USB UVC/UAC) via wave.prism (SDK TypeScript surface; no fleet backend yet) | planned | | Analytics, BI dashboards, revenue metrics via wave.pulse (SDK TypeScript surface; no fleet backend yet) | planned | | Multi-camera production, scenes, transitions, graphics, audio mixing via wave.studio (SDK TypeScript surface; no fleet backend yet) | planned | | Transcription with speaker diarization via wave.transcribe | lib | | Agent email send, reply, search, transcript email, and SMS via wave.mail (E5 comms productization; x402-USDC-settled sub-cent sends) | ga | | Usage metering ledger and rollup by channel (mail/voice/sms/realtime/storage) via wave.meter (requires meter:read scope) | ga | | Recording storage, VOD, archive policies via wave.vault (SDK TypeScript surface; no fleet backend yet) | planned | | Text-to-speech via wave.voice.synthesize(); voice-clone methods exist as SDK client surface but are not backed by the wave-voice product yet | lib | | Agent routing (route/pool) and an OpenAI-compatible proxy for LLM/agent traffic, shipped at the WAVE gateway; reachable from the SDK today via the base WaveClient request methods (no dedicated wrapper module yet) | ga |

The receipts

Every claim below is checked by npm run verify against the live repo or endpoint — a non-pass verdict fails the gate.

| Claim | How it's verified | | --- | --- | | The base WaveClient exposes a generic protected request() method that any endpoint — including gateway/dispatch routes without a dedicated wrapper module — can be reached through | resolved by grepping src/client.ts | | Documentation surface is docs.wave.online | resolved by grepping package.json | | Licensed Apache-2.0 | resolved by grepping package.json | | 42 independently-importable API module subpaths are declared under package.json exports, plus the package root | resolved by grepping package.json | | Requires Node.js >=18.0.0 | resolved by grepping package.json | | The npm package is published as @wave-av/sdk | resolved by grepping package.json | | Current package.json version is 2.1.0-next.0 | resolved by grepping package.json | | Each API module is independently importable via a package.json subpath export (e.g. @wave-av/sdk/pipeline) | resolved by grepping package.json | | wave.voice.synthesize() implements text-to-speech; the SDK also declares cloneVoice() client methods that are not backed by the wave-voice product | resolved by grepping src/voice.ts | | A single Wave client class in src/index.ts composes every API module as a readonly property | resolved by grepping src/index.ts | | Takes zod ^3.22.0 as a peer dependency for runtime validation | resolved by grepping package.json |

Topics

sdk · typescript · streaming · video · audio · production · webrtc · ndi · srt · clips · voice · transcription · captions · analytics


Built by WAVE Online, LLC · wave.online · Docs · LinkedIn

The wave CLI

The SDK ships a CLI. Install globally and script WAVE from your terminal or agent:

npm install -g @wave-av/sdk@next
wave --help

The CLI is a thin arg parser over the same RuntimeClient the SDK exports, so every command maps 1:1 to the API surface. Agents can call it without building integrations.