Render in-process
Load a chart, merge values, and produce manifests without making the Helm executable part of your deployment.
Render, inspect, and release Helm charts in managed code. HelmSharp does not start the Helm CLI at runtime.
Install the chart and renderer packages:
dotnet add package HelmSharp.Chart --version 1.3.2
dotnet add package HelmSharp.Engine --version 1.3.2Then load a chart directory, build its values, and render it. The quickstart contains a copyable program and explains the three objects involved.
var chart = await HelmChartLoader.LoadAsync(chartPath, CancellationToken.None);
var values = await HelmValues.BuildAsync(chart, valuesFiles: null, null, null, null, null, null, CancellationToken.None);
var renderer = new HelmTemplateRenderer(chart, "demo", "default", values);
var manifest = renderer.Render();HelmSharp.Action when you intentionally need release state or Kubernetes mutation.| If you are building… | Start with | Read next |
|---|---|---|
| A preview, validator, or GitOps generator | HelmSharp.Chart + HelmSharp.Engine | Render a chart |
| A deployment service or operator | HelmSharp.Action | Install and upgrade releases |
| A Kubernetes controller with existing YAML | HelmSharp.Kube | Apply manifests directly |
| A chart repository or packaging pipeline | HelmSharp.Action + HelmSharp.Repo | Chart delivery |
The package decision guide explains these boundaries in more detail and links to each generated API surface.
HelmSharp follows Helm behavior where that behavior is implemented and tested; it is not a promise that every chart or plugin will work unchanged. Check the compatibility contract and the template-function matrix before treating a Helm edge case as a production dependency.
HelmCompare is also available for side-by-side output inspection.