Skip to content

Dock Apps

Pre-built applications that extend Stratos Vault with DeFi, tokenization, and compliance capabilities.


Overview

Dock Apps run as iframes within the Stratos Vault interface, with full access to multi-chain transaction signing, Canton smart contract operations, and user authentication via the Stratos Wallet SDK.

┌─────────────────────────────────────────────────────────────┐
│                      Stratos Vault                            │
│  ┌─────────────────────────────────────────────────────────┐ │
│  │  Stratos Vault  │  Stratos Swap  │  Stratos RWA  │ ... │ │
│  ├─────────────────────────────────────────────────────────┤ │
│  │                                                          │ │
│  │              Active Dock App (iframe)                    │ │
│  │                                                          │ │
│  │    SDK ←→ postMessage ←→ Parent Wallet                  │ │
│  │    Canton operations, signing, balances                  │ │
│  │                                                          │ │
│  └─────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────┘

All dock apps share a common architecture:

  • React 19 + TypeScript + Vite frontend
  • Cloudflare Pages deployment with serverless API functions
  • @stratos/wallet-sdk for wallet integration
  • Daml smart contracts for Canton-based business logic
  • /api/package endpoint for DAR distribution

Stratos Vault Manager

DeFi vault management with Canton governance and EVM execution.

Capabilities

  • ERC-4626 Vaults - Deploy compliant vault contracts on EVM chains with share-based deposit/withdrawal
  • Canton Policy Governance - Daml contracts enforce access control, allocation targets, and approval workflows
  • Multi-Signature Approvals - Configurable threshold signing for critical operations (terminate, withdraw, policy updates)
  • Automated Rebalancing - Cloudflare Workflow-based bot monitors allocation drift and executes rebalance trades
  • Policy Profiles - Solo Operator, Team Management (2-of-N), and DAO Governance (3-of-5 + 48h timelock)
  • Emergency Controls - Pause/unpause, emergency withdrawal, and vault termination

Architecture

┌──────────────────────────────────────────────────────────────┐
│                     Vault Lifecycle                            │
│                                                               │
│  Create Vault ──> Configure Policy ──> Deploy EVM Contract   │
│       │                   │                    │              │
│  ┌────▼────┐      ┌──────▼──────┐      ┌──────▼──────┐     │
│  │ Canton  │      │   Canton    │      │    EVM      │     │
│  │ Policy  │◄────►│   State     │◄────►│   Vault     │     │
│  │ (Daml)  │      │   (Daml)    │      │  (ERC4626)  │     │
│  └─────────┘      └─────────────┘      └─────────────┘     │
│                          ▲                                    │
│                          │                                    │
│                   Rebalancer Bot                              │
│                  (Cloudflare Workflow)                        │
└──────────────────────────────────────────────────────────────┘

Smart Contracts

ContractTypeDescription
VaultPolicyDamlGovernance rules, access roles, allocation targets, rebalance settings
VaultStateDamlEVM state mirror, rebalance tracking, drift monitoring
PendingActionDamlMulti-sig approval workflow for critical operations
StratosVault.solSolidityERC-4626 vault with rebalancing and access control
StratosVaultFactory.solSolidityFactory for deploying vault contracts linked to Canton policies

Supported Chains

Ethereum, Polygon, Arbitrum, Avalanche (configurable)

Whitelisted Protocols

Uniswap, Aave, Curve, Compound, Yearn, GMX, Convex, Balancer


Stratos Swap

Multi-chain DEX aggregator and cross-chain bridge.

Capabilities

  • 6 Swap Providers with automatic routing based on source/destination chain
  • Cross-Chain Bridges for moving assets between networks
  • Canton Bridge for bidirectional Canton Coin (CC) to USDC (Base) transfers
  • Unified Quote Interface across all providers

Provider Matrix

ProviderChainsType
Skip GoEVM, Cosmos, SolanaCross-chain aggregator
JupiterSolanaDEX aggregator
STON.fiTONDEX
SunSwapTRONDEX
BTTC BridgeTRON, Ethereum, BSCCross-chain bridge
Canton BridgeCanton, BaseCC/USDC bridge

Canton Bridge

Bidirectional bridge between Canton Coin and USDC on Base:

Canton Coin (CC)                              USDC (Base)
      │                                            │
      │  CC → USDC:                                │
      │  1. Daml escrow locks CC                   │
      │  2. Oracle confirms                        │
      │  3. Solidity releases USDC ────────────>   │
      │                                            │
      │  USDC → CC:                                │
      │  1. Solidity deposits USDC  <──────────    │
      │  2. Oracle confirms                        │
      │  3. Daml releases CC                       │
      │                                            │
      │  Fee: 0.1%                                 │

Smart Contracts

ContractTypeDescription
CantonCoin/BridgeDamlBridgeEscrow, BridgeRequest, BridgeConfig templates
CantonBridge.solSolidityUSDC deposit/release with fee collection and replay protection

Stratos RWA

Real-world asset tokenization marketplace with compliance controls.

Capabilities

  • Dual Asset Types - Fungible (fractional ownership) and non-fungible (unique) tokenized assets
  • Atomic DvP Settlement - Delivery vs Payment in a single Canton transaction with automatic platform fee
  • Configurable Compliance - Per-asset rules for accredited investor requirements, jurisdiction restrictions, holding limits, and lock-up periods
  • Permissioned DAO Governance - Operator appoints issuers via proposal workflow; issuers operate within approved categories
  • Role-Based UI - Dynamic interface for Operator, Issuer, Verifier, and Investor roles

Compliance Framework

RuleDescription
requireAccreditedInvestorRestrict to accredited investors
requireKYCRequire KYC verification
maxHoldersReg D 506(b) limits
maxHoldingPercentageMaximum ownership per investor
minInvestmentAmountMinimum investment threshold
transferRestrictionDaysLock-up period
jurisdictionWhitelist / BlacklistGeographic restrictions

Investor Verification Tiers

Unverified → KYC Verified → Accredited Verified → Institutional

Asset Categories

Real Estate, Commodities, Art, Securities, and custom categories.

Smart Contracts

ContractTypeDescription
RWAOperatorDamlPlatform governance, issuer licenses, verifier, investor profiles
RWAAssetDamlAsset definitions, holdings, lock/unlock mechanisms
RWAMarketplaceDamlOrder book, trades, DvP settlement, listings, payment holdings
RWATypesDamlShared enums and compliance configuration types

Stratos PrivaMargin

Privacy-preserving margin verification on Canton Network.

Capabilities

  • Collateral Vaults - Create vaults, deposit/withdraw tokenized assets, link to derivative positions
  • Multi-Asset Collateral - Support for stablecoins, RWA, bonds, equities, and crypto assets
  • Margin Verification - Prove sufficient collateral without revealing vault composition
  • ZK Proof Attestation - Zero-knowledge proof generation for privacy-preserving verification
  • Margin Call Workflow - Automated triggers when collateral falls below requirements, with settlement lifecycle
  • Live Price Feeds - CoinMarketCap integration for real-time asset valuation

Workflow

Create Vault → Deposit Assets → Link to Position → Set Margin Requirement

                                              ┌───────────▼────────────┐
                                              │  Verify Margin         │
                                              │  (ZK Proof Generated)  │
                                              └───────────┬────────────┘

                                    ┌─────────────────────┼──────────────────┐
                                    │                                        │
                              Sufficient                              Insufficient
                              (Attestation)                          (Margin Call)

                                                                    Settlement

Smart Contracts

ContractTypeDescription
AssetsDamlTokenizedAsset with transfer, update, and acceptance choices
CollateralVaultDamlVault with deposit, withdraw, link, and value calculation
MarginVerificationDamlMargin requirements, verification, margin calls, and settlement

Building Custom Dock Apps

All dock apps follow the same integration pattern. See the Developer Introduction for building your own.

Common Pattern

typescript
import { getSDK } from '@stratos/wallet-sdk';

const sdk = getSDK();
const { user } = await sdk.connect();

// Canton operations
const contracts = await sdk.cantonQuery({
  templateId: 'packageId#Module:Template',
});

await sdk.cantonExercise({
  contractId: '...',
  templateId: 'packageId#Module:Template',
  choice: 'MyChoice',
  argument: { /* ... */ },
});

DAR Package Distribution

Each dock app exposes /api/package for automatic Daml package installation:

json
{
  "name": "App Name",
  "packageId": "abc123...",
  "darUrl": "/api/package/download",
  "templates": ["Module:Template1", "Module:Template2"]
}

Next Steps

Enterprise-grade multi-chain wallet infrastructure.