Skip to main content
StackKits are validated, reusable infrastructure blueprints that define architecture patterns for your homelab. Each StackKit describes how services relate to each other — not how many servers you need.

What is a StackKit?

A StackKit combines three concepts to produce your infrastructure: A StackKit is a smart configuration system that:
  1. Validates your choices against proven architecture patterns
  2. Detects your runtime environment and applies context-aware defaults
  3. Merges composable Add-Ons for additional capabilities
  4. Generates production-ready infrastructure code

The problem StackKits solve

You want to set up a homelab. You’ve heard of:
  • Traefik (or Caddy? or nginx?)
  • Authelia (or Authentik? or Keycloak?)
  • Portainer (or Dockge? or Coolify?)
  • Immich (or Photoprism?)
Questions that keep you stuck:
  • Which tools work well together?
  • How do I configure them correctly?
  • What are the best practices?
  • How do I avoid security issues?

Available StackKits

StackKits are architecture patterns, not node-count definitions.

Base Kit

Single-environment patternAll services in one deployment target. Simple, predictable.
  • Docker Compose
  • Any node count
  • Context-aware defaults

Modern Homelab Kit

Hybrid infrastructure patternBridges local and cloud environments with VPN overlay.
  • Multi-environment
  • Coolify PAAS
  • Public + private services

High Availability Kit

High-availability patternRedundancy, failover, and quorum-based consensus.
  • Docker Swarm cluster
  • Keepalived VIP
  • 3+ nodes recommended

The three concepts

1. StackKit = Architecture pattern

A StackKit defines how services relate to each other, not how many servers you have.
StackKitPatternExample
baseSingle-environment1 Pi running all services, or 3 servers sharing the same stack
modernHybridHome server + cloud VPS connected via VPN
haHA cluster3-node Docker Swarm with failover
A base StackKit can run on multiple nodes (same stack replicated). An ha StackKit can run on a single powerful node (simulated HA). The pattern defines the architecture, not the scale.

2. Node-Context = auto-detected environment

Each node is automatically classified based on hardware and provider metadata:
ContextDetectionAffects
localPhysical hardware, no cloud metadataSelf-signed TLS, Dokploy PAAS, local DNS
cloudCloud provider metadata detectedLet’s Encrypt, Coolify PAAS, public DNS
piARM + low memory or RPi detectionReduced services, ARM images, tmpfs
At Level 0 (standalone CLI), you specify context manually. At Level 2+ (with kombify TechStack agent), context is auto-detected from hardware reports.

3. Add-Ons = composable extensions

Add-Ons replace the old monolithic variant system. They are stackable and declare their compatibility:
Add-OnCategoryCompatible StackKits
monitoringObservabilitybase, modern, ha
backupDatabase, modern, ha
vpn-overlayNetworkingmodern, ha
gpu-workloadsComputebase, modern
mediaApplicationsbase, modern
smart-homeIoTbase
kombination.yaml
addons:
  - monitoring       # Prometheus + Grafana + Alertmanager
  - backup           # Restic + configurable targets
  - media            # Jellyfin + *arr stack

Progressive capability model

StackKits operates at different capability levels depending on how you access it:
LevelNameAccess MethodCapabilities
0Standalone CLIstackkit CLI directlyCUE validation, IaC generation, direct provisioning
1Control Planekombify TechStack Web UI/APIUnifier pipeline, wizard UI, StackKit resolver
2Worker Agentkombify TechStack + gRPC AgentContext auto-detection, placement engine
3Runtime IntelligenceDay-2 operationsDrift detection, auto-remediation, cert renewal
4AI-Assisted (SaaS)kombify SphereNatural language config, predictive scaling
Level 4 capabilities are available exclusively through kombify Sphere (SaaS) and require cloud connectivity.

How StackKits work

Context-driven defaults matrix

The combination of StackKit × Context produces curated default configurations:
localcloudpi
baseDokploy, self-signed TLSCoolify, Let’s EncryptLean Docker, reduced services
modernTailscale exit node, hybrid DNSMulti-cloud meshEdge relay role
haSwarm + KeepalivedCloud HA + managed LBNot recommended

Validation flow

When you run stackkit validate or use kombify TechStack:

StackKit comparison

Featurebasemodernha
PatternSingle-environmentHybrid infrastructureHA cluster
Container runtimeDocker ComposeDocker + CoolifyDocker Swarm
Typical nodes1 (supports N)2+ (multi-environment)3+ (odd for quorum)
ComplexityLowMediumHigh
VPN overlayOptional (Add-On)Built-inOptional
FailoverNoNoYes
Best forFirst homelab, single VPSHybrid setups, public servicesProduction workloads

Choosing a StackKit

Use: baseStart simple with a single-environment setup:
  • Easy to understand
  • Minimal resource requirements
  • Great for learning
  • Add capabilities later with Add-Ons
Use: modernFor hybrid setups connecting different environments:
  • VPN overlay connects all nodes
  • Public services via cloud nodes
  • Private services stay local
  • Coolify manages deployments
Use: haWhen downtime is unacceptable:
  • Automatic failover
  • Database clustering
  • Load balancing with Keepalived
  • Requires 3+ nodes (odd number for quorum)

Next steps

Base Kit

Detailed documentation for the single-environment StackKit

CUE language basics

Learn the CUE language used in StackKits

Customization guide

How to customize StackKits for your needs

Quick start

Deploy your first StackKit