Installation
Prerequisites
- Rust 1.70 or higher
- Git (for submodule dependencies)
- Stoffel CLI (optional, for project scaffolding)
Installation Methods
Using Cargo (Recommended)
Add to yourCargo.toml:
Using Stoffel CLI Template
The easiest way to start a new Rust MPC project:- Rust application with SDK integration
- StoffelLang program in
stoffel/src/program.stfl - Example code demonstrating the SDK API
- Ready-to-run configuration
From Source
For development or customization:Verifying Installation
Create a simple test program:Dependencies
The SDK depends on several Stoffel components (managed as git submodules):| Component | Purpose |
|---|---|
stoffellang | StoffelLang compiler |
stoffel-vm | Virtual machine runtime |
stoffelmpc-mpc | HoneyBadger MPC protocol |
stoffelnet | QUIC networking |
Platform Support
| Platform | Status |
|---|---|
| Linux (x86_64) | ✅ Fully supported |
| macOS (x86_64, ARM64) | ✅ Fully supported |
| Windows (WSL2) | ✅ Supported |
| Windows (native) | ⚠️ Experimental |
Troubleshooting
Submodule Issues
If you see errors about missing dependencies:Build Failures
Ensure you have the latest Rust:Linking Errors
On Linux, you may need:Next Steps
- SDK Overview: Understand the SDK architecture
- API Reference: Complete API documentation
- Examples: Working code examples