Skip to content

SDK and examples

Two official client libraries expose the same Client surface — auth, chat, wallet, explorer, playground, admin, and the SSE event stream.

Language Install Package
Python pip install waveledger-sdk PyPI
Node / browser (TS) npm install waveledger-sdk npm

Both are MIT-licensed, dependency-light (Python: requests only; Node: zero runtime deps), and track the messenger REST API one-to-one. See Python client and JavaScript client for the full surface.

Base URL

Every code sample in this section talks to:

https://api.waveledger.net

Self-hosted nodes serve the same routes on http://localhost:8081 by default (override with --messenger-port).

Pick your path

  • Python


    pip install waveledger-sdk. Uses requests under the hood; importable as from waveledger import Client.

    Python client

  • JavaScript / TypeScript


    npm install waveledger-sdk. Pure ESM, zero runtime deps, native fetch + ReadableStream. Works in Node 18+ and modern browsers.

    JavaScript client

  • Signing transactions


    The canonical tx envelope, the signed fields, and how to produce a valid signature outside the messenger.

    Signing

  • Subscribing to events


    SSE for block, tx, message, and receipt events; server-side filtering by type and address.

    Events

Release notes

Version Date Notes
0.2.0 2026-06 API tokens: Client(api_token=...) / new Client({ apiToken }) for unattended use. Token mint/list/revoke under admin.token_*. Python SDK now vendors the Fourier compiler; client.playground.compile_local(source) compiles in-process. Construction warns on plain-HTTP credential use to non-loopback hosts. TS SDK validates Set-Cookie against the configured baseUrl origin.
0.1.1 2026-05 Metadata bump: package URLs now point at docs.fermi.world. No behavior changes.
0.1.0 2026-05 Initial release on both registries. Covers messenger, wallet, explorer, playground, admin, and SSE.