Platform Overview
High-level architecture of the multi-cloud infrastructure orchestration platform.
Platform Overview
This platform is a hybrid multi-cloud infrastructure orchestration system. It combines a visual web interface, a command-line tool, and autonomous execution agents to provision production-grade Kubernetes clusters with databases, caches, networking, DNS, secrets, and GitOps — across AWS, GCP, and Azure.
Three-Component Model
| Component | Type | Language | Role |
|---|---|---|---|
| Trellis | Web application | TypeScript (Next.js 15) | Visual configuration, job management, real-time monitoring |
| Grape | CLI tool | Go | Terminal-based operations, scripting, CI/CD integration |
| Tendril | Execution agent | Go | Runs Terraform, installs ArgoCD, streams logs back to Trellis |
Data Flow
User ─► Trellis (web) ─► Job Queue (PostgreSQL) ─► Tendril (agent) ─► Cloud Provider
│ │
├─ OR ──► Grape (CLI) ─► Job Queue ──────────┘
│
└─ Supabase Realtime ◄── Log Streaming ◄── Tendril- The user configures infrastructure through Trellis (web form) or Grape (CLI commands)
- Actions are queued as jobs in PostgreSQL
- A Tendril agent claims the job atomically and assumes temporary cloud credentials
- The Tendril executes Terraform and streams logs back in real-time
- On completion, ArgoCD is installed for GitOps-managed deployments
Multi-Cloud Support
Every infrastructure component has provider-specific implementations across three clouds:
| Capability | AWS | GCP | Azure |
|---|---|---|---|
| Kubernetes | EKS | GKE | AKS |
| Relational DB | Aurora PostgreSQL/MySQL | Cloud SQL | Azure Database |
| Cache | ElastiCache (Redis/Valkey) | Memorystore | Azure Cache for Redis |
| NoSQL | DynamoDB | Firestore | Cosmos DB |
| Messaging | SQS + SNS | Pub/Sub | Service Bus |
| DNS | Route 53 | Cloud DNS | Azure DNS |
| Secrets | Secrets Manager | Secret Manager | Key Vault |
| Container Registry | ECR | Artifact Registry | ACR |
| Object Storage | S3 | Cloud Storage | Storage Account |
| WAF | AWS WAFv2 | Cloud Armor | Azure WAF |
Tech Stack
Web (Trellis): Next.js 15, Supabase (PostgreSQL + GoTrue + Realtime + S3), Tailwind CSS, shadcn/ui, Zustand
CLI (Grape): Go, Cobra, Charmbracelet (lipgloss, huh, bubbletea), Homebrew tap
Agent (Tendril): Go, ECS Fargate (ARM64), embeds Terraform + kubectl + Helm + cloud CLIs
Shared (grape-core): Go package — provisioner, Terraform wrapper, cloud SDKs, ArgoCD, Infracost, Git, Helm
Infrastructure: Terraform, Supabase S3 (state), Lambda scaler (scale-to-zero), release-please
Concept Pages
Deep dives into the platform's key technical patterns:
Domain Model
Vineyard/Vine/Tendril entities, lifecycles, and relationships.
Security Architecture
Zero-credential model, RLS, cloud provider federation.
Database Schema
Full PostgreSQL schema — tables, enums, functions, Realtime.
Job Queue Pattern
Atomic claiming, FOR UPDATE SKIP LOCKED, failure recovery.
Tendril Scaling
Scale-to-zero with Lambda scaler, EventBridge, and ECS Fargate.
Cloud Provider Abstraction
Registry, region mapping, instance types, provider_config JSONB.
Provisioning Pipeline
Form values → config snapshot → VineConfig → terraform.tfvars.json → infrastructure.
Real-time Architecture
Supabase Realtime, log streaming, store synchronization.
Cost Estimation
AWS Pricing API, real-time sidebar, Infracost integration.
Authentication Flows
OAuth (web), Device Code Grant (CLI), token auth (Tendril).
Multi-Cloud Conversion
Cross-provider vine duplication with mapping and warnings.
Terraform State
Supabase S3 backend, state paths, plan artifacts.
GitOps & ArgoCD
App of Apps pattern, infra facts, Helm values.
Release System
release-please, GoReleaser, Docker builds, CI/CD.
Monorepo Structure
bb-thesis-2026/
├── apps/
│ ├── trellis/ # Next.js web platform
│ ├── grape/ # Go CLI tool
│ ├── tendril/ # Go execution agent
│ └── vintner/ # Documentation site (Fumadocs)
├── packages/
│ ├── grape-core/ # Shared Go libraries
│ ├── ui/ # Shared UI components
│ ├── charts/ # Helm charts
│ └── ...config/ # Shared TS/ESLint config
├── infra/
│ ├── platform/ # Tendril deployment (ECR, ECS, Lambda scaler)
│ ├── templates/vine/ # Infrastructure templates (AWS/GCP/Azure)
│ ├── templates/argocd/ # ArgoCD application templates
│ └── onboarding/ # Cloud provider federation setup
├── supabase/migrations/ # PostgreSQL schema migrations
└── .github/workflows/ # CI/CD (release-please, release-grape, release-tendril)