Skip to content

Architecture Overview

StackSolo transforms declarative JSON configs into real GCP infrastructure.

Config (JSON) → Code Generator → CDKTF/Terraform → GCP Resources
  1. You write stacksolo.config.json
  2. StackSolo generates TypeScript CDKTF code
  3. CDKTF synthesizes to Terraform JSON
  4. Terraform deploys to GCP

The command-line interface that orchestrates everything:

  • init - Project setup and config generation
  • scaffold - Generate source code templates
  • dev - Local Kubernetes development
  • deploy - Production deployment

Config schema and validation:

  • JSON Schema definitions
  • Type generation
  • Reference resolution (@function/name.url)

Plugin system:

  • Provider registration
  • Resource type definitions
  • Code generation interfaces

Environment abstraction for deployed code:

  • Unified access to env vars
  • Local vs production detection
  • Kernel connection helpers

Plugins provide resource types and code generation:

PluginPurpose
gcp-cdktfCore GCP resources via Terraform CDK
kernelShared services (NATS-based)
gcp-kernelShared services (GCP-native)
.stacksolo/
├── stacksolo.config.json # Your config
├── cdktf/ # Generated infrastructure code
│ ├── main.ts
│ └── cdktf.out/ # Terraform JSON
└── k8s/ # Local dev manifests

stacksolo dev creates a local Kubernetes environment:

  • Uses OrbStack/Docker Desktop
  • Runs Firebase & Pub/Sub emulators
  • Port-forwards all services
  • Hot reloads on file changes