> For the complete documentation index, see [llms.txt](https://docs.digit.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.digit.org/platform/guides/operations-guide/deployment-using-helm/helm-installation.md).

# Helm Installation

Before installing Helm you need to know about **Yaml files.**\
**Yaml file: Yaml files (Yet Another Markup Language)** are used to transmit the data in web applications.\
**Json file: Json files (JavaScript Object Notation)** are a standard text-based format to view the structured data of javascript object syntax.

JSON and YAML files are both used to transfer data between web applications. The key difference is that YAML files use indentation similar to Python to indicate the level of your code, unlike JSON.

### Pre-requisites

1. Git (please visit the **GitOps** page if you haven't installed Git).
2. Install Visual Studio <https://code.visualstudio.com/download> IDE Code for better code visualization/editing capabilities
3. Install Golang <https://go.dev/doc/install#download>(required version:V1.13.3)
4. Kubectl (see **working with Kubernetes** page to install kubectl)

* **What is helm?** helm can be defined as a package manager for Kubernetes. It is used to deploy (to extend) the applications and services easily into the Kubernetes cluster in the form of Helm charts.
* **What are helm charts?** It consists of a set of templates and a file containing variables used to fill these templates based on the custom values and configurations.
* **Why are we using helm in DIGIT?**
  1. Greatly improved productivity
  2. Reduced complexity of deployments
  3. More streamlined CI/CD pipeline

Helm charts are written in YAML and contain everything your developers need to deploy a container to a Kubernetes cluster. You may be used to creating Pods, Deployments, Services etc. in Kubernetes via the kubectl create command. This way of creating objects is indeed valid and great for learning purposes. However, when running Kubernetes in production you often want to have all your objects defined as .yaml files. This makes it easier for others to know what’s running in the cluster and allows for your deployments to be version-controlled.

#### To install Helm, follow the link provided below <https://helm.sh/docs/intro/install/>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.digit.org/platform/guides/operations-guide/deployment-using-helm/helm-installation.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
