SDK Support

Dash Platform provides SDKs for multiple languages and environments so developers can build applications on whatever stack they prefer.

Available SDKs

SDKLanguageStatusPackageUse case
Rust SDKRustAvailable nowrs-sdkServer-side applications, full-node tooling, direct protocol access
JavaScript SDKJavaScript / TypeScriptAvailable nowjs-evo-sdkNode.js backends, scripts, CLI tools
iOS SDKSwiftComing in v3.1swift-sdkiOS and macOS applications
Android SDKKotlinComing in v3.2--Android applications

Supporting packages

PackagePurpose
rs-sdk-ffiC FFI layer over the Rust SDK; used by the Swift SDK, the Android SDK, and any language that can call C

Choosing an SDK

Building a server or CLI tool? Use the Rust SDK for maximum performance and direct access to all protocol features, or the JavaScript SDK if your stack is Node.js.

Building an iOS or macOS app? Use the Swift SDK (v3.1+), which wraps the Rust SDK through an FFI layer and provides native Swift types.

Building an Android app? The Android SDK (v3.2+) will wrap the same FFI layer with native Kotlin types.

Building for another language? The FFI layer (rs-sdk-ffi) exposes a C-compatible interface that can be called from Python, C#, or any language with C interop support.

What every SDK provides

All SDKs share the same underlying Rust implementation, so behavior is consistent across platforms:

  • Identity management -- create, top up, and manage identities with hierarchical key support
  • Data contract deployment -- define and publish JSON Schema-based data contracts
  • Document operations -- create, update, delete, and query documents with proof verification
  • Token operations -- query balances, supply, statuses, and pre-programmed distributions
  • Name registration -- register and resolve DPNS usernames
  • Proof verification -- every query response can be cryptographically verified against the platform state root