13 - Picking a Project¶
What this session is¶
About 30 minutes plus browsing. What "Kubernetes-adjacent" OSS looks like and how to evaluate one.
What kinds of projects accept first contributions¶
With Kubernetes skills (without needing deep Go programming), you can contribute to:
- Helm charts - fixes, defaults, docs, examples.
- Kustomize bases / overlays - same idea.
- kubectl plugins - small CLIs that extend kubectl.
- Operators (read-only) - docs, sample manifests, bug reports.
- Documentation - k8s.io itself, controller docs, chart docs.
- GitHub Actions for K8s - useful tooling.
- CRD examples / starter manifests.
For deep code contributions (operators, controllers, kubectl itself), you'll need Go fluency - see Go from scratch.
10-minute evaluation¶
Same as other beginner paths:
| Signal | Target |
|---|---|
| Stars | 100-50000 |
| Last commit | Within a month |
| Open PRs | Some, not 200+ |
| Recent PR merge time | Under 14 days |
good first issue count |
≥5 |
| CONTRIBUTING.md exists | yes |
| Local install works (helm install or kubectl apply) | yes |
Candidates¶
Tier 1 - Helm charts (small surface)¶
bitnami/charts- Bitnami's chart collection. Each chart is a separate component. Excellent labels, very responsive.prometheus-community/helm-charts- Prometheus ecosystem.grafana/helm-charts- Grafana, Loki, Tempo, Mimir.cert-manager/cert-manager- TLS automation. Has its own chart + docs.
These accept Helm-only PRs - chart value defaults, missing values examples, README clarifications.
Tier 2 - kubectl plugins and small tools¶
derailed/k9s- terminal UI for K8s. Active, Go.stern/stern- multi-pod log tail. Go.ahmetb/kubectx-kubectx/kubens. Small Go.kubectl-plugin-list- search for kubectl plugins; many small ones exist.vmware-tanzu/velero- K8s backup/restore tool.
These often have Go code; some have shell or YAML-only changes available too.
Tier 3 - bigger projects, with K8s focus¶
argoproj/argo-cd- GitOps for K8s. Big project, well-organized.fluxcd/flux2- alternative GitOps tool.kubernetes-sigs/...- many smaller projects under the kubernetes-sigs org. Each is more focused than the mainkubernetes/kubernetesrepo.
Tier 4 - don't start here¶
kubernetes/kubernetesitself - huge, slow review, CLA required.prometheus/prometheus- popular but big.
Finding issues¶
Project's Issues → Labels. Filter by:
- good first issue
- help wanted
- documentation
- helm (if Helm-specific)
Comment to claim. Wait for maintainer.
What counts¶
Real contributions for someone with K8s skills:
- Fix a chart value default that's broken on a specific platform (ARM, EKS, etc.).
- Add a missing example to a chart's README.
- Improve the documentation for a CRD field.
- Add a missing
app.kubernetes.io/versionlabel. - Fix a broken example in the docs.
- Add a kubectl plugin to a curated list.
- Add a missing test for a Helm template helper.
- Improve an Ingress example to include TLS and HTTPS redirect.
All real. All count.
Exercise¶
- Browse three Tier 1 / Tier 2 projects.
- 10-minute evaluation.
- Pick the most responsive with
good first issues. - Read CONTRIBUTING.md.
- Clone: If it's a Helm chart, try installing it locally:
- Browse
good first issuetickets; pick two candidates. Don't claim yet.
What you might wonder¶
"What if I'm intimidated by the Operator/controller projects?" Skip them. There's plenty of work that's pure YAML / Helm / docs. Operators are Go code with deep K8s API knowledge - a separate skill set.
"What's a CNCF project?" The Cloud Native Computing Foundation hosts many of the most-used K8s ecosystem projects (Prometheus, Envoy, Helm, Argo, Linkerd, etc.). CNCF projects tend to have well-defined governance and contribution processes. Browse cncf.io/projects.
Done¶
- Articulate K8s-OSS contribution shapes.
- Run a 10-minute evaluation.
- Have specific candidate projects.
Next: Anatomy of a K8s-related OSS project →