Releases: windvex/windkit
Releases · windvex/windkit
WindKit v0.2.3
WindKit v0.2.3
Docs
- Updated README to JavaScript-first examples (ESM-only).
- Ensured README.md and CHANGELOG.md are included in the published npm tarball.
- Documentation now matches the latest published package.
Note: This release is documentation-only. No runtime behavior changes intended.
WindKit v0.2.2
WindKit v0.2.2
Published: 2026-03-02
Highlights
- Standardized session storage key:
sessionStorage["vex-session"] - Compacted login identity payload keys (
pi,na,ic,do, optionalauth) - Standardized request method names:
signRequest,signMessage,sharedSecret - Improved reliability and cleanup on disconnect
- Tuned for low-memory mobile devices
Changed
- Session storage key standardized to
"vex-session". - Login identity payload compacted with standardized keys:
pi(peer id)na(app name)ic(icon)do(origin)- optional
auth(cached identity proof)
- RPC method names standardized:
signRequestsignMessagesharedSecret
Added
clearSession()helper for manual session reset.- Smart session reuse:
- Reuses stored
peerID - Reuses permission hints (
account@permission) when available.
- Reuses stored
Fixed
- Hardened session loader:
- Automatically clears expired or malformed session payloads.
- Improved disconnect cleanup:
- Safe destroy/disconnect (best-effort, non-throwing).
Improved
- Optimized for low-memory environments:
- Lightweight heartbeat with jitter
- Reduced message routing allocations
- Lower background CPU usage on mobile devices
WindKit v0.2.1 – PeerJS Standalone
WindKit v0.2.1 – PeerJS Standalone
This release adds a fully standalone PeerJS connection layer so Vexanium DApps can connect to the Wind Wallet out-of-the-box—no environment variables required. Defaults match Wind’s production signaling stack.
✨ What’s new
- PeerJS defaults (standalone)
host=core.windcrypto.com,port=443,secure=true,path='/',key='peerjs'
- Server config helpers
configureForCore()setServer(host, { port, secure, path, key }),setPath(),setKey(),setSecure(),setPort()
- ICE / TURN utilities
addIceServer(),setIceServers(),clearIceServers()- Validation rejects
turn:/turns:entries withoutusername&credential
- Events
- Re-emits:
open,close,disconnected,error, plus walletsession
- Re-emits:
- Session persistence
- Reuses valid sessions via
sessionStorage(expandsig)
- Reuses valid sessions via
🛠 Improvements & fixes
- Full TypeScript refactor with dual outputs (ESM
dist/index.js, CJSdist/index.cjs) anddist/index.d.ts - More reliable re-login flow; expired sessions are auto-cleared
- Prevents WebRTC error: “Both username and credential are required when the URL scheme is turn/turns.”
⚡ Quick start
import { WindConnector } from "windkit";
const connector = new WindConnector(); // defaults already target core.windcrypto.com
const vsr = connector.createLoginRequest("Wind DApp", "https://example.com/icon.png");
connector.on("session", (session) => {
console.log("Connected:", session.actor?.toString());
});
await connector.connect();
// Deep-link (optional):
// https://wallet.windcrypto.com/login?vsr=<request>WindKit v0.1.1 – Initial Release
First public release of WindKit, a protocol for connecting Vexanium DApps to the Wind wallet, enabling secure communication and transaction signing.
Features
- Cross-device login via VSR (Vexanium Signing Request)
- Transaction signing (single/multi-action)
- Message signing
- Shared secret (ECDH) for encryption
- PeerJS-based WebRTC signaling
Docs
- npm: https://www.npmjs.com/package/windkit
- See README.md for usage examples.