Explore projects
TypeScriptadvanceddevops
Kubernetes Operator in TypeScript
Custom Kubernetes Operator in TypeScript that manages a CRD resource, reconciles desired with actual state, and exposes metrics.
5 steps
Project steps
- 01
CRD definition
Defines a simple CRD: WebApp with spec(image, replicas, domain).
- 02
Controller loop
Watches for CRD events (ADDED, MODIFIED, DELETED), enters reconcile loop.
- 03
Reconcile
Ensures Deployment + Service + Ingress exist with values from spec.
- 04
Status updates
Updates .status.conditions with ready/progressing/error.
- 05
Metrics
prom-client: counter reconcile_total, histogram reconcile_duration_seconds.
Recommended resources
Ready to build this?
Fork the repo on GitHub and start building. A mentor will review your code when you open a PR.
5 steps
Tech stack
TypeScript@kubernetes/client-nodeprom-clientzod