Full Type Safety
Catch infrastructure errors at compile time with TypeScript's powerful type system. Get IDE autocomplete for all Kubernetes resources.
Build Kubernetes infrastructure with runtime dependencies in clean TypeScript that compiles to Kubernetes Resource Orchestrator (KRO) YAML.
Start with type-safe schema definitions using ArkType
import { type } from 'arktype';
// Define your application's specification schema
const WebAppSpecSchema = type({
name: 'string',
image: 'string',
replicas: 'number%1',
port: 'number%1'
});
// Define the status schema for runtime information
const WebAppStatusSchema = type({
url: 'string',
ready: 'boolean',
deployedReplicas: 'number'
});
ArkType provides runtime type validation with TypeScript inference. This ensures your infrastructure definitions are type-safe at both compile time and runtime, giving you excellent developer experience with IntelliSense and catching errors early.
Because nobody likes YAML and Kubernetes dependencies are hard. TypeKro provides runtime intelligence through Kubernetes Resource Orchestrator (KRO), enabling resources to reference each other's live cluster state with CEL expressions. Here's what you get compared to other tools:
Feature | TypeKro | Pulumi | CDK8s | Helm | Kustomize | Crossplane |
---|---|---|---|---|---|---|
Type Safety | ✅ Full TypeScript | ✅ Multi-language | ✅ TypeScript | ❌ Templates | ❌ YAML | ❌ YAML |
GitOps Ready | ✅ Deterministic YAML | ❌ State backend | ✅ YAML output | ✅ Charts | ✅ YAML | ✅ YAML |
Runtime Dependencies | ✅ KRO + CEL expressions | ❌ Deploy-time only | ❌ Static | ❌ Templates | ❌ Static | ✅ Compositions |
IDE Support | ✅ Full autocomplete | ✅ Language support | ✅ TypeScript | ❌ Limited | ❌ Limited | ❌ Limited |
Learning Curve | 🟢 Just TypeScript | 🔴 New concepts | 🟡 TypeScript + K8s | 🔴 Templates | 🔴 YAML hell | 🔴 Complex |
Kubernetes Native | ✅ Pure K8s resources | ❌ Abstraction layer | ✅ Pure K8s | ✅ K8s resources | ✅ K8s resources | ✅ K8s + CRDs |
Cross-Resource Refs | ✅ Runtime resolution | ❌ Deploy-time | ❌ Manual | ❌ Manual | ❌ Manual | ✅ Built-in |
Multi-Cloud | 🟡 Via Alchemy | ✅ Native | ❌ K8s only | ❌ K8s only | ❌ K8s only | ✅ Native |
State Management | ✅ Stateless | ❌ State backend | ✅ Stateless | ✅ Stateless | ✅ Stateless | ✅ Controller |
Kubernetes Resource Orchestrator (KRO) is an open-source project by AWS Labs, with contributions from Google, Microsoft, and the broader Kubernetes community. KRO enables advanced resource orchestration with runtime dependencies and CEL expressions. TypeKro builds on KRO to provide:
TypeKro works in Direct Mode (no KRO required) for simple deployments, or KRO Mode for advanced orchestration with runtime dependencies.
Learn more: KRO Documentation →