Vintner

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.

Platform Architecture

Three-Component Model

ComponentTypeLanguageRole
TrellisWeb applicationTypeScript (Next.js 15)Visual configuration, job management, real-time monitoring
GrapeCLI toolGoTerminal-based operations, scripting, CI/CD integration
TendrilExecution agentGoRuns 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
  1. The user configures infrastructure through Trellis (web form) or Grape (CLI commands)
  2. Actions are queued as jobs in PostgreSQL
  3. A Tendril agent claims the job atomically and assumes temporary cloud credentials
  4. The Tendril executes Terraform and streams logs back in real-time
  5. On completion, ArgoCD is installed for GitOps-managed deployments

Multi-Cloud Support

Every infrastructure component has provider-specific implementations across three clouds:

CapabilityAWSGCPAzure
KubernetesEKSGKEAKS
Relational DBAurora PostgreSQL/MySQLCloud SQLAzure Database
CacheElastiCache (Redis/Valkey)MemorystoreAzure Cache for Redis
NoSQLDynamoDBFirestoreCosmos DB
MessagingSQS + SNSPub/SubService Bus
DNSRoute 53Cloud DNSAzure DNS
SecretsSecrets ManagerSecret ManagerKey Vault
Container RegistryECRArtifact RegistryACR
Object StorageS3Cloud StorageStorage Account
WAFAWS WAFv2Cloud ArmorAzure 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:

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)

On this page