Skip to content

SDKs

Status: TypeScript SDK is fixture-rehearsed against the live cloud. Rust SDK is a local fixture client (no HTTP).

The Gestalt SDK is the membrane from a developer’s perspective. It is explicitly not a workflow library, an ORM, or a permission layer. It exposes typed envelopes and shape-correct receipts for the cloud membrane.

  • TypeScript — calls the cloud over HTTP. Includes a built-in createFixtureFetch() for unit tests and offline work.
  • Rust — today, a local fixture client only (no HTTP). Useful for embedding Gestalt-shaped reasoning into Rust binaries.
  • Fixture mode — how to develop without running the cloud at all.
typed request envelopes IntentPrecheckRequest, ProofRequest, etc.
typed response envelopes MembraneResponse<T>
local receipt verification (shape-only) verifyFixtureReceipt
fixture simulation (TS) createFixtureFetch
proof disclosure request construction ProofRequest, ProofBundleRequest

The SDK does not own admission, key custody, package activation, Pendulum dispatch, proof issuance, or operator audit. Those live on the cloud Geist side and are reachable only through their membrane operations.

The SDK also does not connect directly to SurrealDB, sign atoms, or mint receipts. Those would all violate the closed runtime boundary.

The SDKs track the membrane contract version. Today the contract is 0.0.1-fixture. Both SDKs follow the same versioning. Breaking changes will bump the contract version and the SDK package versions together.

Use TypeScript whenUse Rust when
You are building a browser or Node KoerperYou are embedding Gestalt logic into a Rust service
You want offline fixture testing without HTTPYou are operating a service that talks to Gestalt internally
You want type-checked membrane envelopes in your frontendYou want to share types with gestalt-core and other crates

For most integrators, TypeScript is the right choice today.