# carvel-dev/kapp

kapp is a simple deployment tool focused on the concept of "Kubernetes application" — a set of resources with the same label

Repository: https://github.com/carvel-dev/kapp
Canonical: https://ross.abutalabs.com/products/kapp
Homepage: https://carvel.dev/kapp
Language: Go
License: Apache-2.0
License Family: permissive
Topics: kubernetes, devops, cli, go, deployment, kubernetes-deployment, k8s, continious-delivery, gitops, carvel, hacktoberfest, hacktoberfest2021
Last push: 2026-08-25T10:40:34+00:00

## Health v2 (maintenance only)
Score: 95/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 87, longevity 100
- inputs: {"age_days": 2728, "days_push": 8, "days_rel": 8, "gap_med": 75.5, "n_releases_24m": 11}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1076, forks 133 (observed 2026-08-28T04:03:29.454386+00:00)

## What it is
kapp is a Go CLI deployment tool for Kubernetes that manages groups of resources sharing a common label as a 'Kubernetes application'. It diffs desired configuration against live cluster state, applies approved changes in dependency order, and waits for resources to become ready.

## Use cases
- deploy a set of kubernetes yaml files as one application
- diff and apply changes to kubernetes resources safely
- delete all resources belonging to a labeled app group
- deploy helm charts without tiller
- run gitops deployments from a directory of manifests
- wait for kubernetes resources to be ready during deploys
- manage kubernetes apps without admin privileges

## When to choose
- you want explicit, reviewable diffs before applying kubernetes changes
- you use config generators like ytt, kustomize, or helm template and only need a deploy tool
- you lack cluster-admin rights and need to deploy within a single namespace
- you want dependency-aware ordering and readiness waiting without server-side components

## When to avoid
- you need YAML templating or package management - use Helm or ytt instead
- you want a full GitOps controller with continuous reconciliation - consider Flux, Argo CD, or kapp-controller
- you need a UI/dashboard for managing deployments

## Facets
- artifact type: cli-tool
- maturity: active
- function: deployment, developer-tools, cli, infrastructure-as-code
- domain: cloud-computing, developer-tools
- platform: cli, go, windows
- tags: kubernetes, gitops, continuous-delivery, carvel, k8s, resource-diffing, app-deployment, devops, containers, automation, linux, macos

## Member repositories
- carvel-dev/kapp (main) score 95

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:03:29.454386+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-30T06:53:21.383592+00:00, confidence not recorded.
  - readme: https://github.com/carvel-dev/kapp (fetched 2026-08-28T04:03:29.454386+00:00, sha ac5126171a55)
  - homepage: https://carvel.dev/kapp (fetched 2026-08-29T12:54:47.135633+00:00, sha a91cca5e7f5c)
  - site_page: https://carvel.dev/shared/docs/latest (fetched 2026-08-29T12:54:47.145738+00:00, sha 8e30760f8ffc)
  - site_page: https://carvel.dev/kapp/docs/v0.64.x (fetched 2026-08-29T12:54:47.148153+00:00, sha d35979bb9f46)
  - site_page: https://carvel.dev/kapp/docs/latest/install (fetched 2026-08-29T12:54:47.150284+00:00, sha 432248f0d142)
  - site_page: https://carvel.dev/kapp/docs/latest/apply-ordering (fetched 2026-08-29T12:54:47.152041+00:00, sha 7343e5c90b44)
  - site_page: https://carvel.dev/kapp/docs/latest/apply-waiting (fetched 2026-08-29T12:54:47.154189+00:00, sha 9cbd3af7eeea)
  - site_page: https://carvel.dev/kapp/docs/latest/gitops (fetched 2026-08-29T12:54:47.157078+00:00, sha 01b4affd93ce)
- Data as of 2026-08-30T08:39:29.467469+00:00.
