Skip to content

Releases: windvex/windkit

WindKit v0.2.3

02 Mar 14:41

Choose a tag to compare

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

02 Mar 14:27

Choose a tag to compare

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, optional auth)
  • 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:
    • signRequest
    • signMessage
    • sharedSecret

Added

  • clearSession() helper for manual session reset.
  • Smart session reuse:
    • Reuses stored peerID
    • Reuses permission hints (account@permission) when available.

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

13 Oct 17:14

Choose a tag to compare

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 without username & credential
  • Events
    • Re-emits: open, close, disconnected, error, plus wallet session
  • Session persistence
    • Reuses valid sessions via sessionStorage (exp and sig)

🛠 Improvements & fixes

  • Full TypeScript refactor with dual outputs (ESM dist/index.js, CJS dist/index.cjs) and dist/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

12 Aug 01:48

Choose a tag to compare

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