A powerful toolkit for building distributed systems and infrastructure as code.
A powerful toolkit for building distributed systems and infrastructure as code.
Blueprint SDK
A comprehensive toolkit for building, deploying, and managing blueprints on the Tangle Network.
The Blueprint SDK is a modular Rust toolkit for building decentralized services—called Blueprints—that run against [Tangle], an EVM protocol deployed on EVM chains.
Blueprints turn complex on-chain and off-chain infrastructure into reproducible, deployable units of logic—think Infrastructure-as-Code for crypto systems. With one SDK, you can design anything from oracles and MPC networks to agent-based AI services or zk-proof markets, and deploy them seamlessly.
The SDK unifies:
In short, Blueprints let developers move from concept to distributed protocol with minimal friction.
We also have a documentation site on all things [Tangle] to help you get started.
The following components make up the SDK, providing everything from job creation and routing utilities to specialized tools for networking and testing.
blueprint-sdk - Main crate for the [Tangle] Blueprint SDK, re-exporting all of the followingblueprint-benchmarking - Utilities for benchmarking blueprintsblueprint-build-utils - Utilities for simplifying build-time tasks (e.g., building contracts, installing dependencies)blueprint-chain-setup - (Meta-crate) Utilities for setting local testnetsblueprint-chain-setup-anvil - Utilities for setting up [Anvil] testnetsblueprint-clients - (Meta-crate) Clients for interacting with [Tangle] and other networksblueprint-client-core - Core client primitives and traitsblueprint-client-tangle - Client for interacting with the [Tangle] EVM contractsblueprint-client-evm - Client for interacting with the EVM Networkblueprint-contexts - Extensions for adding functionality to custom blueprint context typesblueprint-context-derive - Derive macros for implementing context extension traitsblueprint-core - Core components for building blueprints, primarily job system primitivesblueprint-crypto - (Meta-crate) Cryptographic utilitiesblueprint-crypto-core - Core cryptographic utilities (traits, types)blueprint-crypto-bls - Utilities for working with BLS signatures and keysblueprint-crypto-bn254 - Utilities for working with BN254 signatures and keysblueprint-crypto-ed25519 - Utilities for working with Ed25519 signatures and keysblueprint-crypto-hashing - Cryptographic hashing utilitiesblueprint-crypto-k256 - Utilities for working with [secp256k1] signatures and keysblueprint-crypto-sr25519 - Utilities for working with sr25519 signatures and keysblueprint-keystore - Flexible keystore implementation, supporting local and remote signersblueprint-macros - Utility macros for simplifying blueprint developmentblueprint-manager - A program executor that connects to a [Tangle] deployment and runs protocols dynamically on the flyblueprint-manager-bridge - IPC bridge for manager-blueprint communicationblueprint-metrics (Meta-crate) Utilities for collecting metricsblueprint-metrics-rpc-calls - Utilities for collecting metrics from RPC callsblueprint-networking - P2P networking support for blueprintsblueprint-networking-round-based-extension - A networking compatibility layer for [round-based] MPC protocolsblueprint-networking-agg-sig-gossip - Aggregated signature gossip extensionblueprint-networking-gossip-primitives - Gossip protocol primitivesblueprint-pricing-engine - Pricing engine for computing resource costsblueprint-producers-extra - Additional protocol-independent event producersblueprint-profiling - Profiling utilities for performance analysisblueprint-qos - Quality of Service monitoring and metricsblueprint-router - A job router for dynamically scheduling jobsblueprint-runner - The blueprint job runner, executing jobs in a protocol-specific mannerblueprint-std - Standard library extensions, for use within the SDKblueprint-stores - (Meta-crate) Storage providers for blueprintsblueprint-store-local-database - A local JSON key-value databaseblueprint-remote-providers - Remote cloud provider integrations (AWS, GCP, Azure, etc.)blueprint-tangle-aggregation-svc - Tangle aggregation service for BLS signature aggregationblueprint-tangle-extra - Tangle-specific producers, consumers, and extractorsblueprint-evm-extra - EVM specific extensions for blueprintsblueprint-faas - FaaS (Function-as-a-Service) execution supportblueprint-auth - Authentication and authorization utilitiesblueprint-testing-utils - (Meta-crate) Utilities for testing blueprintsblueprint-core-testing-utils - Core testing utility primitivesblueprint-anvil-testing-utils - Utilities for creating and interacting with Anvil testnetsEnsure you have the following installed:
sudo apt update && sudo apt install build-essential cmake libssl-dev pkg-config
brew install openssl cmake
You can install the [Tangle] CLI in two ways:
Install the latest stable version of cargo-tangle using the installation script:
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/tangle-network/blueprint/releases/download/cargo-tangle/v0.1.1-beta.7/cargo-tangle-installer.sh | sh
Install the latest git version of cargo-tangle using the following command:
cargo install cargo-tangle --git https://github.com/tangle-network/blueprint --force
After installation, you can create, build, register, and run your first blueprint against the [Tangle] EVM:
# Create a new blueprint named "my_blueprint"
cargo tangle blueprint create --name my_blueprint
# Navigate into the blueprint directory and build
cd my_blueprint
cargo build
# Deploy your blueprint to the [Tangle Network]
# Write the contract coordinates used by your service
cat > settings.env **Note:** The harness loads `crates/chain-setup/anvil/snapshots/localtestnet-state.json` and falls back to the bundled `localtestnet-broadcast.json` if the snapshot is missing or fails validation. Refresh fixtures with `scripts/fetch-localtestnet-fixtures.sh`, and set `RUN_TNT_E2E=1` to opt into the longer suites.
For a keystore-to-runner walkthrough (keys, env vars, harness commands, and manual
`TangleClient` snippets) see [`docs/operators/anvil.md`](docs/operators/anvil.md).
For additional commands, advanced configurations, and complete CLI usage, see the [official CLI reference](https://docs.tangle.tools/developers/cli/reference).
## Support
For support or inquiries:
- **Issues:** Report bugs or request features via GitHub Issues.
- **Discussions:** Engage with the community in GitHub Discussions.
- For real-time assistance and announcements:
- Join our [Discord server](https://discord.com/invite/cv8EfJu3Tn)
- Join our [Telegram channel](https://t.me/tanglenet)
---
## Key Concepts
**Blueprint SDK** is a Rust framework for building verifiable, decentralized services on [Tangle Network] with built-in x402 payment rails, multi-operator BLS aggregation, and TEE support.
**Blueprint** is a deployable service specification that defines computation logic, verification requirements, and payment flows in a single package. Operators stake TNT tokens to run blueprints, with slashing for incorrect results.
**x402** is an HTTP-native micropayment protocol built into the SDK that enables per-request payments for blueprint services. Agents pay with signed HTTP headers, no accounts or API keys required.
**Operator** is a node runner who stakes economic collateral (TNT tokens) to execute blueprint jobs. Multiple operators can verify the same job through BLS signature aggregation.
**TangleArg / TangleResult** are extractor types that decode on-chain job inputs and encode results for sub
No open issues yet, or sync has not completed.