Discover how to leverage ArgoCD applications and projects to deploy and manage applications in Kubernetes clusters effectively. In this guide, we explore the core concepts of ArgoCD, explain how to create applications using both the CLI and YAML, and provide detailed code examples. ArgoCD revolves around two main concepts: the application and the project. An application in ArgoCD is a Custom Resource Definition (CRD) that represents a deployed instance within your Kubernetes cluster. It includes two primary components:Documentation Index
Fetch the complete documentation index at: https://notes.kodekloud.com/llms.txt
Use this file to discover all available pages before exploring further.
-
Source:
Points to the Git repository (or supported alternatives like Helm charts, Kustomize, or Jsonnet) where the desired state of your Kubernetes manifests is defined. -
Destination:
Defines the target Kubernetes cluster and namespace where the resources will be deployed.

When choosing the creation method, consider your team’s workflow. The CLI is great for quick operations while YAML is preferred for version-controlled deployments.
Creating an Application
Creating an Application Using the CLI
When managing ArgoCD via the Command Line Interface (CLI), you supply critical parameters including the repository URL, manifest path, destination Kubernetes server, and destination namespace. Use the following example:Creating an Application Using YAML
For a more declarative approach, you can define your application using a YAML file. Below is a sample YAML manifest for an ArgoCD application, where the application is created within the default ArgoCD project:For additional guidance on managing and configuring ArgoCD projects, explore our detailed documentation and recommended practices.