Sigil ships a Rust SDK as the reference implementation. The TypeScript client used by the official wallet, explorer, and faucet is also published. Go and Python developers use the JSON-RPC directly today — wrappers are on the roadmap.
SDKStatusPackageSurface
RustStablesigil-sdk (in-repo)Transaction builder, resolver, mail, SNS, NFT, storage
TypeScriptStable@sigil/sigil-web / contracts/client (in-repo)JSON-RPC client + Ed25519 signer
GoUse raw RPCJSON-RPC over net/http, sign with crypto/ed25519 + BLAKE3
PythonUse raw RPCJSON-RPC over httpx, sign with cryptography + blake3
The chain protocol is JSON-RPC over HTTPS. Every SDK is a thin layer over the same wire format documented in API reference → JSON-RPC. Anything you can do with an SDK you can do with curl; the SDKs exist to remove boilerplate around signing, nonce management, and receipt polling.

Which SDK should you use?

Rust

Pick Rust if you are building validators, indexers, contracts, or any service that needs the strictest type guarantees. The Rust SDK is the canonical reference — every other SDK matches its wire format.

TypeScript

Pick TypeScript if you are building a wallet, dApp frontend, or Node service. The official wallet ships on the same client you’ll use.

Go

Pick Go for high-throughput indexers or backend services. Until a first-party wrapper lands you’ll call the JSON-RPC directly — the page shows the canonical pattern.

Python

Pick Python for scripts, data work, or research notebooks. Same story as Go: raw JSON-RPC with a thin signer helper.

Capability parity matrix

This table is generated from the SDK source. See SDK_AUDIT.md for the source of truth.
CapabilityRustTypeScriptGoPython
JSON-RPC clientManualBuilt-inManualManual
Ed25519 transaction signingBuilt-inBuilt-inManualManual
TransactionBuilder (staking + gov + contracts)Built-in
Raw Transaction constructionBuilt-inBuilt-inManualManual
OAS DID resolverBuilt-in
Mail (envelope, mailbox, policy)Built-in
SNS (name resolver, namehash)Built-in
NFT helpersBuilt-in
Storage market preflightBuilt-in
GAL verification (feature-gated)gal, gal-http
Sign-in transcript (SIWE-equivalent)gal feature
WebSocket subscriptionsRoadmapRoadmapRoadmapRoadmap
Manual = the surface exists at the JSON-RPC layer; the SDK does not wrap it yet. = no implementation; copy the Rust source to port it.

Versioning and stability

  • SDKs follow strict SemVer. The current released version of every SDK is 0.1.0.
  • Breaking changes to RPC method names are minor-version events. Breaking changes to request or response shapes are major-version events.
  • The chain enforces wire-format compatibility through contracts/client/rpc-methods.json and contracts/client/system-contracts.json. Both files ship with every release.

Reporting bugs

File issues against the l1feai/sigil repository. For SDK-specific bugs, prefix the title with the language: [rust-sdk] ..., [ts-sdk] ....