# kapicorp/kapitan

Generic templated configuration management for Kubernetes, Terraform and other things

Repository: https://github.com/kapicorp/kapitan
Canonical: https://ross.abutalabs.com/products/kapitan
Homepage: https://kapitan.dev
Language: Python
License: Apache-2.0
License Family: permissive
Topics: kubernetes, jsonnet, kapitan, orchestration, docker, declarative, jinja2, devops, devops-tools, terraform, jinja2-templates, reclass, aws-kms, python, gpg, gitops, gcp-kms, python3, yaml, helm
Last push: 2026-08-09T08:24:39+00:00

## Health v2 (maintenance only)
Score: 95/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 96, release rhythm 91, longevity 100
- inputs: {"age_days": 3250, "days_push": 24, "days_rel": 61, "gap_med": 10, "n_releases_24m": 14}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1925, forks 215 (observed 2026-08-28T04:05:55.527691+00:00)

## What it is
Kapitan is a Python CLI tool for templated, inventory-driven configuration management that compiles Jsonnet, Jinja2, Kadet, Helm, Kustomize, and CUE inputs into manifests, scripts, and Terraform resources. It includes native secrets management with GPG, AWS KMS, GCP KMS, Azure Key Vault, and HashiCorp Vault, and is designed for GitOps and platform engineering workflows.

## Use cases
- generate kubernetes manifests from a shared inventory
- manage terraform variables across multiple environments
- avoid duplicating values between helm values files and kustomize overlays
- encrypt secrets in git for gitops workflows
- template configuration for complex infrastructure systems
- organize reusable configuration classes for many targets

## When to choose
- you manage configuration for many environments or targets and want a single source of truth
- you want declarative, inventory-driven generation of Kubernetes, Terraform, and Helm configs
- you need encrypted secrets committed to a GitOps repository

## When to avoid
- you only need simple templating without an inventory model
- you prefer imperative configuration tools or a full CD system
- your team is not prepared to learn Jsonnet or reclass conventions

## Facets
- artifact type: cli-tool
- maturity: active
- function: configuration-management, templating, secrets-management, deployment, developer-tools
- domain: infrastructure-as-code, cloud-computing
- platform: python, cli, cross-platform
- tags: jsonnet, jinja2, kubernetes, terraform, helm, kustomize, gitops, reclass, secrets-encryption, platform-engineering, devops, containers, automation, linux, macos, docker

## Member repositories
- kapicorp/kapitan (main) score 95

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:55.527691+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:09:21.935967+00:00, confidence not recorded.
  - readme: https://github.com/kapicorp/kapitan (fetched 2026-08-28T04:05:55.527691+00:00, sha 80b387fb40bb)
  - homepage: https://kapitan.dev (fetched 2026-08-29T10:48:48.045773+00:00, sha 36c6c3c2e4f9)
  - registry_pypi: https://pypi.org/pypi/kapitan/json (fetched 2026-08-29T10:48:48.048306+00:00, sha c20493fb7aaf)
- Data as of 2026-08-30T08:39:29.467469+00:00.
