This repository contains the Nyl project and related components for Kubernetes manifest generation.
nyl/ - The Nyl Tool
Fast, efficient Kubernetes manifest generator written in Rust. Complete rewrite with 10x performance improvements.
Key features:
- 🚀 Blazing fast manifest generation
- 💾 Memory efficient (<50MB RAM)
- 📦 Single static binary (8.5MB)
- 🔧 Helm integration
- 🎨 Jinja2-compatible templating
→ See nyl/README.md for installation and usage details.
docker/ - ArgoCD Config Management Plugin
Docker image containing Nyl and ArgoCD CMP Server for use as an ArgoCD plugin.
Includes:
- Nyl (Rust binary)
- ArgoCD CMP Server
- Helm, SOPS, Kyverno
→ See docker/README.md for build instructions.
chart/ - ArgoCD Helm Chart
Helm chart to deploy ArgoCD with Nyl as a Config Management Plugin.
→ See chart/README.md for installation instructions.
# Install Nyl from releases
curl -LO https://github.com/helsing-ai/nyl/releases/latest/download/nyl-x86_64-unknown-linux-gnu.tar.gz
tar xzf nyl-x86_64-unknown-linux-gnu.tar.gz
sudo mv nyl /usr/local/bin/
# Create a new project
nyl new project my-app
cd my-app
# Render manifests
nyl render --environment devInstall development tools with mise:
mise install
eval "$(mise activate)"
# Build and test
mise run build # Build release binary
mise run test # Run tests
mise run lint # Run clippy
mise run fmt # Format code
mise run pre-commit # Run all checks
# Documentation
mise run docs-serve # Serve mdbook documentation- Nyl Tool Documentation - Installation, commands, examples
- Migration Guide - Python to Rust migration details
- Online Docs - Complete documentation (mdbook)
Nyl has been completely rewritten in Rust with significant improvements:
| Metric | Improvement |
|---|---|
| Performance | 10x faster |
| Memory | 75% reduction |
| Binary size | 8.5MB (vs ~200MB+ image) |
| Cold start | <50ms |
See MOVE_TO_RUST.md for complete migration details.
MIT License - see LICENSE for details.