Deployment Orchestration
for Soroban
Build. Deploy. Version. Interact. Caatinga automates your Stellar smart contract pipeline with type-safe artifacts and multi-contract dependency resolution.
npx ctg init my-dappv1.0The Six-Stage Pipeline
From fresh scaffold to on-chain read & invocation, Caatinga standardizes every step.
Interactive Workflow Pipeline
Click through the Caatinga execution stages to see how orchestration flows from init to read.
npx ctg init my-dappScaffold a new Soroban project with caatinga.config.ts, contracts workspace, and ready-to-use tooling.
Project name, template selection (react-vite-counter, minimal, zk-starter)
my-dapp/ directory structure, caatinga.config.ts, contracts/
What is Caatinga?
Caatinga is a deployment orchestrator and versioned artifact manager designed specifically for Stellar Soroban smart contracts.
Instead of manually compiling Rust crates, keeping track of contract IDs in arbitrary environment files, or writing ad-hoc deploy scripts, Caatinga gives you a structured workflow backed by caatinga.config.ts and caatinga.artifacts.json.
Deterministic Artifacts
Track every WASM hash, network deployment, contract ID, and upgrade history in version-controlled JSON artifacts.
TypeScript-Native Binding Generation
Automatically generate strongly-typed TypeScript client packages directly from deployed contract specs.
Engineered for Soroban Developers
Everything you need to orchestrate complex multi-contract architectures.
Automatic Resolution
Define contract dependencies with dependsOn and let Caatinga deploy in exact topological order.
Managed Contract Upgrades
Upgrade contract WASM code in-place while keeping identical Contract IDs, or trigger full redeployments with full history.
Safe Stellar Identities
Strictly enforce identity aliases (e.g. alice) from Stellar CLI, preventing hardcoded secret keys.
@caatinga/client
Plug-and-play client library with wallet adapters for Freighter and Stellar Wallets Kit.
ZK Scaffold Support
Built-in workflows for Circom circuits, Groth16 proof generation, and Soroban verifier integration.
Automated Pipelines
Deterministic CLI commands (doctor, smoke, ci) built for GitHub Actions.
Declarative Configuration
Define contracts, dependencies, network parameters, and post-deploy hooks in type-safe TypeScript.
import { defineConfig } from "@caatinga/cli";
export default defineConfig({
project: { name: "my-dapp" },
contracts: {
token: { path: "contracts/token" },
vault: {
path: "contracts/vault",
dependsOn: ["token"],
},
},
networks: {
testnet: {
rpcUrl: "https://soroban-testnet.stellar.org",
networkPassphrase: "Test SDF Network ; September 2015",
},
},
});Ready to Build on Soroban?
Explore our step-by-step documentation, architecture guides, and CLI references to streamline your deployment flow.