0Pricing
Helm Academy · Lesson

Declaring a Library Chart Type

Setting type to library and what that forbids.

Declaring a Library Chart Type is a free Helm Academy lesson on CoddyKit — lesson 1 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the Helm Academy learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.

Two Kinds of Chart

Every Helm chart declares a type in Chart.yaml. The default is application, but a second type exists purely for sharing template logic.

# Chart.yaml
apiVersion: v2
name: my-app
type: application

Enter the Library Chart

Set type: library and the chart stops being something you install. It becomes a toolbox of named templates for other charts to reuse.

# Chart.yaml
apiVersion: v2
name: common
version: 0.1.0
type: library

Library Charts Render Nothing

A library chart produces no Kubernetes objects on its own. It only defines templates that consuming charts call when they render.

You Cannot Install One

Running helm install on a library chart fails. There is nothing to deploy, so Helm refuses the command by design.

helm install c ./common
# Error: library charts are not installable

No Top-Level templates Output

Files in a library chart's templates folder are not rendered as manifests. They must only define partials, never emit YAML directly.

The Underscore Convention

Helm skips files in templates that start with an underscore. Library template files use names like _deployment.tpl to stay non-rendering.

common/
  Chart.yaml
  templates/
    _deployment.tpl

apiVersion v2 Is Required

Library charts only exist under apiVersion: v2. Helm 2 era v1 charts had no concept of a library type at all.

# Chart.yaml
apiVersion: v2
type: library

Versioned Like Any Chart

A library still needs a version field so consumers can pin to it. Treat it as a real release artifact, not a loose folder.

# Chart.yaml
name: common
version: 1.2.0
type: library

Why Bother With a Library Type

Instead of copying the same Deployment YAML into ten charts, you write it once in a library and let every chart pull it in.

Bitnami Common Is the Classic Example

The widely used bitnami/common chart is a library. Hundreds of charts depend on it for shared labels, names, and image helpers.

Application vs Library, Side by Side

An application chart deploys workloads; a library chart only supplies templates. The single type field decides which one Helm treats it as.

type: application  # installs resources
type: library      # shares templates

Quick Check

You set type: library in Chart.yaml. What happens when you run helm install on it?

Recap: The Library Chart Type

A type: library chart renders nothing and cannot be installed. It exists only to package named templates that other charts reuse. 📦

Frequently asked questions

Is the “Declaring a Library Chart Type” lesson free?

Yes — the full text of “Declaring a Library Chart Type” is free to read here on the web, and the Helm Academy course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the Helm Academy course, upgrade to CoddyKit PRO.

What will I learn in “Declaring a Library Chart Type”?

Setting type to library and what that forbids. You practise Helm Academy with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.

Do I need any experience to start Helm Academy?

No prior experience is required. Helm Academy on CoddyKit is structured for beginners through advanced learners; this is — lesson 1 of 4, so you can start here or from the beginning and move at your own pace.

How long does the “Declaring a Library Chart Type” lesson take?

Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.

Can I write and run code in this Helm Academy lesson?

Yes. Every Helm Academy lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.

All lessons in this course

  1. Declaring a Library Chart Type
  2. Exporting Reusable Named Templates
  3. Consuming a Library as a Dependency
  4. Overriding Library Defaults Locally
← Back to Helm Academy