Releases: lightninglabs/wavelength-sdk
Release list
v0.1.2-rc4
Pairs the SDK with the wavelength v0.1.2-rc4 release.
npm install @lightninglabs/wavelength-web@nextSDK packages
- web: verify runtime asset integrity before execution by @jamaljsr in #72
- core: expose external-seed wallet startup by @sputn1ck in #73
- core: sync runtime and facade to wavelength v0.1.2-rc3 by @sputn1ck in #74
- core: pin the daemon to wavelength v0.1.2-rc4 and refresh the runtime asset digests by @jamaljsr in #75
Docs site
- web: document runtime asset integrity and self-hosting by @jamaljsr in #72
- core: document external-seed wallet startup by @sputn1ck in #73
- core: refresh the API reference for wavelength v0.1.2-rc3 by @sputn1ck in #74
- docs: note that release binaries now ship the wallet API by @jamaljsr in #75
Demo apps
- demo: sync the demos to wavelength v0.1.2-rc3 by @sputn1ck in #74
- demo: answer ArkService GetInfo over the smoke mailbox by @jamaljsr in #75
Maintenance
- chore: add the runtime digest tooling and CI pin gate by @jamaljsr in #72
- chore: fold this sync's lessons into the daemon-sync skill by @jamaljsr in #75
New Contributors
Full Changelog: v0.1.1...v0.1.2-rc4
v0.1.1
Paired with the wavelength v0.1.1 daemon release.
Returning visitors now skip the runtime download entirely, since the daemon wasm is cached across sessions on top of a faster startup path. Opening the same wallet in a second tab fails fast with a clear wallet_locked error instead of hanging, and both demos can now keep multiple named wallets per app install. The React Native package pulls prebuilt native bindings from the pinned release, so a local gomobile build is no longer required to run it.
npm install @lightninglabs/wavelength-webSDK packages
- Fail fast with wallet_locked when the wallet is open in another tab by @jamaljsr in #56
- web: accelerate and measure wallet startup by @Roasbeef in #58
- web: cache the daemon runtime so returning visitors skip the download by @Roasbeef in #59
- react-native: fetch prebuilt bindings from the pinned release by @jamaljsr in #62
- core: keep the preimage the list snapshot drops by @Roasbeef in #69
- Sync the daemon pairing to wavelength v0.1.1 by @jamaljsr in #71
Docs site
- docs: post-launch sweep over the docs site and demos by @jamaljsr in #50
- docs: drop the deferred Playground scaffolding and dead ignore rules by @jamaljsr in #57
- docs: link the signet faucet from the networks preset table by @levmi in #61
- docs: rework the READMEs into one information architecture by @jamaljsr in #64
Demo apps
- demo: make iOS simulator builds work without a signing certificate by @jamaljsr in #60
- Support multiple named wallets per app install in both demos by @jamaljsr in #63
Maintenance
- chore: hide the maintainer-only skill from skills CLI installs by @jamaljsr in #47
- ci: stage the demo runtime from the wavelength release by @jamaljsr in #52
- ci: publish packages to npm on release via trusted publishing by @jamaljsr in #54
- docs: fold the draft-release step into the sync runbook by @jamaljsr in #66
New Contributors
Full Changelog: v0.1.0...v0.1.1
v0.1.1-rc3
This release moves the SDK's daemon pairing to wavelength v0.1.1-rc3. As a release candidate it publishes to the next dist-tag on npm:
npm install @lightninglabs/wavelength-web@next
SDK packages
- Sync the daemon pairing to wavelength v0.1.1-rc3; the embedded config gained two new fields for the automatic-refresh fee budget curve, no
WalletServiceRPCs changed by @jamaljsr in #70
Docs site
Full Changelog: v0.1.1-rc2...v0.1.1-rc3
v0.1.1-rc2
This release moves the SDK's daemon pairing to wavelength v0.1.1-rc2. As a release candidate it publishes to the next dist-tag on npm:
npm install @lightninglabs/wavelength-web@next
SDK packages
- Sync the daemon pairing to wavelength v0.1.1-rc2; the client API, the generated types, and the API schema are all unchanged, since the release is a daemon-internal patch over rc1 by @jamaljsr in #68
Maintenance
- Fold the draft-release step into the sync runbook by @jamaljsr in #66
- Lead the sync runbook's runtime-asset step with a release check, so a pin naming a published release stages from it instead of building locally by @jamaljsr in #68
Full Changelog: v0.1.1-rc1...v0.1.1-rc2
v0.1.1-rc1
This release moves the SDK's daemon pairing to wavelength v0.1.1-rc1. As a release candidate it publishes to the next dist-tag on npm:
npm install @lightninglabs/wavelength-web@next
SDK packages
- Sync the daemon pairing to wavelength v0.1.1-rc1; the client API is unchanged, the API schema gains
OnchainAddressRequest.sweep_allby @jamaljsr in #65 - Fail fast with a
wallet_lockederror code when the wallet is open in another tab, plusruntime_lock_unavailablefor refused lock requests by @jamaljsr in #56 - Fetch prebuilt React Native bindings from the pinned release with
bindings:fetchby @jamaljsr in #62 - Distribute the wasm runtime assets as a wavelength release asset and gate merges on a downloadable pin by @jamaljsr in #52
- Publish packages to npm on tag-driven releases via trusted publishing; stable versions land on
latest, prereleases onnextby @jamaljsr in #54
Docs site
- Rewrite the CLI reference for wavecli's reworked agent contract: kebab-case flags, new global flags, the exit-5 confirmation gate, and
--password-stdinby @jamaljsr in #65 - Post-launch accuracy sweep over the API reference, CLI pages, guides, concepts, and package references by @jamaljsr in #50
- Rework the READMEs into one information architecture across the repo, packages, and demos by @jamaljsr in #64
- Drop the deferred Playground scaffolding and dead ignore rules by @jamaljsr in #57
Demo apps
- Support multiple named wallets per app install in both demos, with per-wallet onboarding, passkey restore, and endpoint presets by @jamaljsr in #63
- Make iOS simulator builds work without a signing certificate by @jamaljsr in #60
Maintenance
Full Changelog: v0.1.0...v0.1.1-rc1
v0.1.0
First public release of the Wavelength SDK: a TypeScript SDK for embedding a self-custodial Bitcoin, Lightning, and Ark wallet directly in your web or React Native app. Your users send and receive Lightning payments with no node to run, no channels to open, and no inbound liquidity to manage, while their keys stay on their own device.
Building a pure-native Kotlin or Swift app? The same embedded wallet ships as a native mobile SDK in wavelength-mobile, documented in the Native iOS & Android section of the docs.
Packages
Published to npm under @lightninglabs:
@lightninglabs/wavelength-core: the transport- and framework-agnostic contract.@lightninglabs/wavelength-web: the browser (WebAssembly) transport.@lightninglabs/wavelength-react: React provider and hooks.@lightninglabs/wavelength-react-native: the React Native transport.
# React + web
npm install @lightninglabs/wavelength-react @lightninglabs/wavelength-web
# React Native
npm install @lightninglabs/wavelength-react @lightninglabs/wavelength-react-nativeNetworks
Signet and testnet are open to anyone. Mainnet is gated to an approved allowlist: request access with your client's identity_pubkey (from wavecli getinfo) through the mainnet access request form. See Mainnet access in the docs for the full steps.
Runtime and native binaries
The web transport's WebAssembly runtime and the mobile native bindings are distributed as assets on the paired wavelength v0.1.0 release. Download the asset set (or build it from a wavelength checkout) and host or stage it yourself. See the docs for the exact steps per platform.
API stability
The client API is functional and supported, but method signatures and JSON field names are versioned together with the wallet runtime and can change between releases. Pin a specific version for production integrations.