Skip to content

Commit ebaf05f

Browse files
StefanoFioravanzoederignandreyvelich
authored
Proposal: Donate Kale to Kubeflow (#922)
* add donation md Signed-off-by: Stefano Fioravanzo <[email protected]> * Update proposals/kale-donation.md Co-authored-by: Eder Ignatowicz <[email protected]> Signed-off-by: StefanoFioravanzo <[email protected]> * Update proposals/kale-donation.md Co-authored-by: Andrey Velichkevich <[email protected]> Signed-off-by: StefanoFioravanzo <[email protected]> --------- Signed-off-by: Stefano Fioravanzo <[email protected]> Signed-off-by: StefanoFioravanzo <[email protected]> Co-authored-by: Eder Ignatowicz <[email protected]> Co-authored-by: Andrey Velichkevich <[email protected]>
1 parent 6730d38 commit ebaf05f

File tree

1 file changed

+148
-0
lines changed

1 file changed

+148
-0
lines changed

proposals/kale-donation.md

Lines changed: 148 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,148 @@
1+
# How to Become a Kubeflow Subproject
2+
3+
## Background information
4+
5+
**Submitters**
6+
7+
- StefanoFioravanzo (Founding Contributor)
8+
- Eder Ignatowicz (Lead Contributor)
9+
10+
11+
**Project Name**
12+
13+
KALE
14+
15+
**Why is this project valuable to the Kubeflow Community?**
16+
17+
Kubeflow covers the full MLOps lifecycle — pipelines, training, tuning, model management, and serving. What’s still missing in the ecosystem is a simple, IDE-native experience for data scientists and ML practitioners who live inside JupyterLab.
18+
Kale fills this gap. It enables users to transform notebooks into Kubeflow Pipelines with minimal code changes, preserving the fast, iterative workflow they are already familiar with while leveraging Kubeflow for scalability, scheduling, and GPU acceleration.
19+
The plan for Kale extends beyond notebook-to-pipeline conversion. It aims to provide an in-notebook experience for visualizing, running, and monitoring pipelines, as well as interacting with other Kubeflow components, such as the Model Registry, Training Operator, and Katib.
20+
As part of the ML Experience Working Group, Kale anchors the effort to bring a modern Jupyter-native experience to Kubeflow, complementing tools like Elyra and Jupyter Scheduler and laying the foundation for future IDE extensions.
21+
22+
**Why is it beneficial for this project to be a part of the Kubeflow Community?**
23+
24+
Kale fits naturally into Kubeflow. It aligns with the ML Experience Working Group and the effort to deliver a first-class Jupyter-native workflow. Bringing it under the Kubeflow org gives us a proper home to evolve that experience and build a consistent notebook-to-production story across all Kubeflow components.
25+
26+
Kale already has a history in the ecosystem. It was created and open-sourced by Arrikto, widely adopted early on, but eventually lost active maintainers. The community has always seen value in it (link) — the main gap has been long-term stewardship. Moving it into the Kubeflow organization formalizes that relationship, establishes a governance model, and encourages broader contributions.
27+
28+
We also proved the momentum is real. In GSoC 2025 (link), the project was revamped and updated to align with Kubeflow Pipelines v2 and JupyterLab 4.0. Since then, Kale has experienced steady community growth, with more than a dozen commits from six contributors across three different organizations (link). Donating Kale now builds on that progress, gives it a sustainable home, and positions it as the foundation for Kubeflow’s interactive IDE experience going forward.
29+
30+
31+
**List of existing (and potential) integrations with Kubeflow Core components**
32+
33+
- Integration with Kubeflow Pipelines 2.0: Kale converts annotated notebooks into KFP 2.0 DSL that can be submitted directly to the KFP server. The generated pipelines leverage the native metadata language and data exchange of Kubeflow Pipelines.
34+
- Kubeflow Notebooks: Kale can be embedded into a notebook image that is managed by the Kubeflow notebooks controller.
35+
- Future integrations:
36+
- Kubeflow Model Registry
37+
- Kubeflow Trainer
38+
- Kubeflow Katib
39+
40+
**Short Description / Functionality**
41+
42+
KALE is a project that aims at simplifying the Data Science experience of deploying Kubeflow Pipelines workflows.
43+
44+
Kubeflow is a great platform for orchestrating complex workflows on top of Kubernetes, and Kubeflow Pipelines provide the means to create reusable components that can be executed as part of workflows. The self-service nature of Kubeflow makes it extremely appealing for Data Science use, at it provides an easy access to advanced distributed jobs orchestration, re-usability of components, Jupyter Notebooks, rich UIs and more. Still, developing and maintaining Kubeflow workflows can be hard for data scientists, who may not be experts in working orchestration platforms and related SDKs. Additionally, data science often involve processes of data exploration, iterative modelling and interactive environments (mostly Jupyter notebook).
45+
46+
Kale bridges this gap by providing a simple UI to define Kubeflow Pipelines workflows directly from your JupyterLab interface, without the need to change a single line of code.
47+
48+
**Adoption**
49+
50+
Kale doesn’t have active production users today — the project went stale a few years ago. That said, community interest has remained strong(link). Since the recent GSoC 2025 revival, we’ve seen new contributors from multiple organizations, regular commits, and significant engagement on the donation issue(link). The demand for a Jupyter-native Kubeflow experience is clear, and Kale is the natural entry point to deliver it.
51+
52+
**Vendor Neutrality**
53+
54+
Yes
55+
56+
**Trademark transition**
57+
58+
The Kale name and logo are fully open source under the Apache license. The company that initially backed the project does hold any legal rights to the name and logo, since they have always been publicly available under the Apache 2.0 license. These assets have not been transitioned nor used by any other company and there is currently no active maintained project that could clash trademarks
59+
60+
**CI/CD Infra Requirements**
61+
62+
Minimal: Kale runs Python and Node/React tests + lightweight end-to-end tests with Kubeflow pipelines on a lightweight k8s cluster.
63+
64+
**Website**
65+
66+
https://kubeflow-kale.github.io/
67+
68+
**GitHub repository**
69+
70+
github.com/kubeflow-kale/kale
71+
72+
**Releases**
73+
74+
First release - May 2019 - this was the first release of the Arrikto era
75+
Kale 2.0 - end of 2025 - expected time window for the release of the revamped and community-driven version
76+
77+
**Meeting Notes**
78+
79+
https://docs.google.com/document/d/1jH2WAX2ePxOfI4JuiVK9nPlesDMiyg67xzLwhpR7wTQ/edit?tab=t.0
80+
81+
**Installation Documentation**
82+
83+
https://github.com/kubeflow-kale/kale/blob/main/README.md
84+
85+
**Project Roadmap**
86+
87+
The short-term goal is to evolve Kale beyond notebook-to-pipeline conversion. The next milestone focuses on adding visual authoring and runtime pipeline visualization directly in JupyterLab. This will let users both define and monitor Kubeflow Pipelines from the same IDE, bridging the gap between code and UI.
88+
89+
In parallel, we plan to align the visual experience between JupyterLab and the Kubeflow Central Dashboard, ensuring a consistent look and feel across the platform. These efforts will serve as the foundation for the Kubeflow JupyterLab Extension MVP, which aims to deliver a unified, streamlined experience for data scientists and ML practitioners across all Kubeflow components.
90+
91+
In the longer term, Kale will be extended to cover other key integrations, including the Model Registry, Training Operator, and Katib, making it the core entry point for interactive MLOps within Kubeflow.
92+
93+
## Metrics
94+
95+
- Number of Maintainers and their Affiliations: Stefano/Eder
96+
- Number of Releases in last 12 months: N/A (no recent release)
97+
- Number of Contributors: 6 on the last 3 months
98+
- Number of Users: N/A (no recent release)
99+
- Number of Forks: 132
100+
- Number of Stars: 649
101+
- Number of package/project installations/downloads: N/A (no recent release)
102+
103+
## Kubeflow Checklist
104+
105+
1. Overlap with existing Kubeflow projects
106+
- [ ] Yes (If so please list them)
107+
- [X] No
108+
109+
1. Manifest Integration
110+
- [ ] Yes
111+
- [X] No
112+
- [ ] Planned
113+
114+
1. Commitment to Kubeflow Conformance Program
115+
- [X] Yes
116+
- [ ] No
117+
- [ ] Uncertain
118+
119+
1. Installation
120+
- [X] Standalone/Self-contained Component
121+
- [ ] Part of Manifests
122+
- [ ] Part of Distributions
123+
- [X] Part of Notebook images
124+
125+
1. Installation Documentation (Current Quality)
126+
- [ ] Good
127+
- [ ] Fair
128+
- [ ] Part of Kubeflow
129+
- [X] We are going to do this as part of 2.0 release
130+
131+
1. CI/CD
132+
- [X] Yes
133+
- [ ] No
134+
135+
1. Release Process
136+
- [ ] Automated
137+
- [X] Semi-automated
138+
- [ ] Not Automated
139+
140+
1. Kubeflow Website Documentation
141+
- [ ] Yes
142+
- [X] No
143+
144+
1. Blog/Social Media
145+
- [X] Yes
146+
- [ ] No
147+
148+

0 commit comments

Comments
 (0)