Tech Stack

This SDK is built on a modern, high-performance stack designed for 3D visualization, real-time collaboration, and memory safety.

Rust

The SDK is written in Rust, chosen for several reasons:

  • Native Performance: Rust’s performance is comparable to C++, providing the low-level control required for intensive 3D operations.
  • Portability: The same codebase can be compiled for native desktop, web (via WebAssembly), and specialized embedded targets.
  • Reliable Concurrency: The language design prevents data races at compile time, essential for multithreaded engine logic.
  • Modern Tooling: Cargo provides a robust build system and package manager, ensuring reproducible builds and making it easy to manage dependencies.
  • Memory Safety: Rust enforces memory safety without a garbage collector, eliminating a common class of bugs in systems programming. When unsafe code is required, it is opt-in, explicit, and auditable.
The Rust Book: The definitive guide to learning Rust.

Bevy Engine

The SDK uses the Open Source Bevy Engine as its underlying multimedia engine. Bevy is a data-driven game engine built in Rust, using a powerful Entity Component System (ECS) that encourages efficient data access and modular design patterns.

Its modular architecture is ideal for building tools and collaborating with developers on complex projects.

Foresight Spatial Labs are long-time contributors and financial supporters of the project.

The Bevy Book: Learn about Bevy’s architecture and how to build systems.

SpatialDrive

SpatialDrive is the flagship desktop client and reference implementation developed alongside the SDK. It demonstrates how to combine the core SDK features into a cohesive tool for professional use cases. Users of the SDK can use this as a starting point for building their own tools.

WebAssembly (WASM)

For third-party extensibility, the SDK uses WebAssembly.

  • Sandboxed Execution: Third-party extensions run in a secure, isolated environment.
  • Language Agnostic: Extensions can be written in any language that targets WASM (Rust, C++, Go, etc.).