Same primitives,
every language.
The Rust SDK is the reference implementation. The TypeScript, Go, Python, Swift, Kotlin, and Vanilla JS+WASM SDKs are ported from it, parity-tested against the same vector suite. Cross-language crypto parity is delivered through shared Rust WASM crypto modules — there is exactly one Ed25519 implementation in the system.
Rust (omega-sdk crate)
TS · Go · Py · Swift · Kotlin · JS+WASM
shared test vectors
one Rust WASM module, all languages
The properties
that matter.
crates.io · async-runtime-agnostic · Tokio + smol tested
npm · pure ES2022 · works in Node 20+ and Deno
go get omega.run/sdk · 1.21+
pip · 3.10+ · async + sync surfaces
SwiftPM · 5.9+
Maven Central · KMP · Android + JVM
browser + edge · zero deps · 18 KB gzipped
What you
can rely on.
Shared test vectors across languages
Every primitive (DID parsing, ACT mint, capability check, BLAKE3 hash) is parity-tested with vectors generated from the Rust reference.
One Ed25519 implementation
All non-Rust SDKs link the same Rust WASM crypto module. Side-channel analysis lives in one place; cross-language drift is impossible.
JS+WASM SDK fits in 18 KB
Edge-friendly. Drop into a Worker or browser. No bundler tweaks; works with esbuild, Rollup, Bun.
Types over the wire
Every protocol message is described in CDDL and codegened into each SDK. Adding a field upstream propagates to every language with a single command.