jhelm — Java Implementation of Helm
jhelm is a native Java implementation of the Helm package manager for Kubernetes. It provides libraries and a CLI to work with Helm charts without the Go-based Helm CLI.
1. Key Features
-
Full Go template engine — 100% Sprig and Helm function coverage
-
Chart lifecycle management — install, upgrade, rollback, uninstall, list, status, history
-
Repository & OCI registries — add/remove repos, search, pull, push
-
Dependency management — list, update, build chart dependencies
-
Spring Boot auto-configuration — programmatic API with
@ConfigurationProperties -
JSON Schema validation — validates chart values against
values.schema.json(Draft-07) -
Template caching — LRU cache for parsed template ASTs
-
Async Kubernetes operations — Java 21 virtual threads via
AsyncKubeService
2. Technology Stack
-
Java 21
-
Spring Boot 4.0.2
-
Kubernetes Client 25.0.0
-
Picocli 4.7.6 (CLI framework)
-
Jackson YAML 2.18.2
-
Commons Compress 1.26.1
3. Quick Links
-
Getting Started — build, run the CLI, or add jhelm as a library
-
Spring Boot Starter — programmatic API with auto-configured beans and code samples
-
CLI Reference — all commands, options, and examples
-
Configuration —
jhelm.*properties reference -
Architecture — module structure and design
-
Roadmap — planned features and compatibility matrix