Getting Started
This guide gets you from an empty GitOps source project to rendered Kubernetes manifests, then points you at the workflow that matches how you deploy.
Installation
Section titled “Installation”With mise
Section titled “With mise”Add Nyl to your mise.toml:
[tools."github:NiklasRosenstein/nyl"]version = "0.4.1"version_prefix = "v"Then install it:
mise installFrom Release
Section titled “From Release”curl -LO https://github.com/NiklasRosenstein/nyl/releases/latest/download/nyl-x86_64-unknown-linux-gnu.tar.gztar xzf nyl-x86_64-unknown-linux-gnu.tar.gzsudo mv nyl /usr/local/bin/From Source
Section titled “From Source”cd nylcargo build --releaseThe binary will be available at nyl/target/release/nyl when building from the repository root.
Install Locally
Section titled “Install Locally”cd nylcargo install --path .This installs nyl to ~/.cargo/bin/nyl.
Quick Start
Section titled “Quick Start”1. Create a Project
Section titled “1. Create a Project”nyl new project platformcd platformThis creates:
nyl.toml- Project configurationcomponents/- Directory for components
2. Add a Component
Section titled “2. Add a Component”nyl new component v1.example.io MyAppThis creates a new local component at components/v1.example.io/MyApp/ with:
Chart.yaml- Helm chart metadatavalues.yaml- Default valuesvalues.schema.json- JSON schema for validationtemplates/deployment.yaml- Kubernetes deployment template
3. Validate
Section titled “3. Validate”nyl validateOutput:
✓ Found project config: /path/to/platform/nyl.toml✓ Components search path exists: /path/to/platform/components✓ Helm chart search path exists: /path/to/platform
✓ Validation passedFor CI, use strict mode to treat warnings as errors:
nyl validate --strict4. Render
Section titled “4. Render”Render a manifest file to stdout:
nyl render apps.yamlFor deterministic CI rendering without cluster discovery, use offline mode. If your nyl.toml defines [project.kubernetes] or [profile.<name>.kubernetes], Nyl uses those values automatically:
nyl render --offline -p dev apps.yamlProject Structure
Section titled “Project Structure”platform/├── nyl.toml # Project configuration├── components/ # Component definitions│ └── v1.example.io/│ └── MyApp/│ ├── Chart.yaml│ ├── values.yaml│ ├── values.schema.json│ └── templates/│ └── deployment.yaml└── charts/ # Optional: additional Helm chart search pathNext Steps
Section titled “Next Steps”- Use rendered manifest GitOps when CI should produce plain YAML for ArgoCD, Flux, or another reconciler.
- Use CLI-first workflows for debugging, bootstrapping, testing, and direct cluster operations.
- Use ArgoCD CMP integration when ArgoCD should render Nyl inputs directly.
- Read about Configuration and the Component System.