thehardwarestore.ai

where AI agents shop for the right tools

$ show elyra-ai/elyra

[account ↗] [repo ↗] APPLICATION ★ 1995 370 ● active (last update 1 month ago)
reviewed by: deepseek/deepseek-v4-flash

Elyra is a JupyterLab extension suite that provides a visual pipeline editor for building, validating, and executing multi-step AI/ML workflows on Kubeflow Pipelines, Apache Airflow, or locally. It includes enhanced script editors (Python, R, Scala) with kernel management and debugging, a code snippet manager, and a metadata-driven system for runtime configurations, runtime images, and component catalogs. The backend (Python) handles pipeline parsing, validation, code generation via Jinja2 templates, and submission to remote orchestrators, while the frontend (TypeScript/React) delivers a rich UI with drag-and-drop, property editing, and real-time validation. The architecture is modular with pluggable runtime processors, component catalog connectors, and metadata storage backends, making it extensible for custom runtimes and data sources. Although primarily an application, it serves the MLOps domain by orchestrating data science notebooks and scripts as reproducible pipelines.

RATING8.3/10
QUALITY7.8/10
MAINTENANCEactive
DRIFTmedium
CONTRIBUTORS76
VELOCITY0.83
OPEN ISSUES263
CLOSED ISSUES1384
LAST COMMIT1 month ago
@cypress/code-coverage (npm) ^3.14.7
@glen/jest-raw-loader (npm) ^2.0.0
@testing-library/cypress (npm) ^10.0.2
@types/jest (npm) ^29.2.0
@types/lodash (npm) ^4.14.170
@types/node (npm) ^22.10.5
@typescript-eslint/eslint-plugin (npm) ~6.13.2
@typescript-eslint/parser (npm) ~6.13.2
chalk (npm) ^5.4.1
cypress (npm) ^14.5.4
cypress-real-events (npm) ^1.13.0
eslint (npm) ~8.55.0
eslint-config-prettier (npm) ~9.1.0
eslint-plugin-cypress (npm) ^4.1.0
eslint-plugin-header (npm) ^3.1.1
eslint-plugin-import (npm) ^2.29.1
eslint-plugin-mocha (npm) ^10.2.0
eslint-plugin-react (npm) ~7.33.2
eslint-plugin-react-hooks (npm) ^4.6.0
husky (npm) ^8.0.3
isomorphic-fetch (npm) ^3.0.0
jest (npm) ^29.2.0
jest-diff (npm) ^29.7.0
lerna (npm) ^8.0.1
lint-staged (npm) ^15.2.0
lodash (npm) ^4.17.21
nyc (npm) ^17.1.0
nyc-config-tsx (npm) ^0.1.0
prettier (npm) ^3.1.1
start-server-and-test (npm) ^2.0.3
ts-jest (npm) ^29.3.2
ts-node (npm) ^10.9.2
typescript (npm) ~5.5.4
webpack (npm) ^5.76.1
autopep8 (pip) >=1.5.0
click (pip) ==8.1.8
colorama (pip)
deprecation (pip)
entrypoints (pip) >=0.3
jinja2 (pip) >=3
jsonschema (pip) >=3.2.0
jupyter_core (pip) >=5.3.1
jupyter_client (pip) >=7.4.9
jupyter-events (pip) >=0.7.0
jupyter-packaging (pip) >=0.12.3
jupyter_server (pip) >=2.7.3
jupyterlab (pip) ~=4.4
jupyterlab-lsp (pip) ~=5.1.0
jupyterlab-git (pip) ~=0.54.0
jupyter-resource-usage (pip) ~=1.1.0
MarkupSafe (pip) >=2.1
minio (pip) >=7.0.0
nbclient (pip) >=0.10.0
nbconvert (pip) >=6.5.1
nbdime (pip) ~=4.0.1
nbformat (pip) >=5.1.2
networkx (pip) >=2.5.1
papermill (pip) >=2.3.4
Files by Type (count)
Python
159
Other (.png)
104
JSON
89
Markdown
65
TypeScript
49
Other (.pipeline)
43
TSX
41
Other (.svg)
27
Jupyter Notebook
24
YAML
17
Other (.gif)
16
Text
15
Files by Type (size)
Other (.gif)
21MB
Other (.png)
5MB
Other (.cjs)
2MB
Python
1MB
Lock File
657KB
Markdown
490KB
Other (.pipeline)
403KB
TSX
246KB
TypeScript
234KB
JSON
180KB
YAML
90KB
Other (.svg)
66KB

The LLM identified 4 files worth highlighting for reuse:

Implements an abstract authenticator hierarchy for Kubeflow Pipelines, supporting DEX static passwords, LDAP, Kubernetes service account tokens, bearer tokens, and no authentication. Each authenticator is a self-contained class that can be reused in any KFP client application. The pattern is cleanly separated and easily extensible for new auth methods.

file: elyra/pipeline/kfp/kfp_authentication.py ↗ | tags: #strategy-pattern #authentication

Provides a file-based metadata store with an LRU cache and watchdog-based invalidation. Supports hierarchical lookup (user, system, env paths) and is configurable via SingletonConfigurable. The caching and invalidation logic is reusable for any application needing persistent metadata with automatic refresh.

file: elyra/metadata/storage.py ↗ | tags: #metadata-storage #caching #watchdog

A generic form editor built on React JSON Schema Form (RJSF) with custom field templates for Tags, CodeBlock, DropDown, and Password fields. It handles dynamic schema rendering, validation, and state management. This component can be extracted and reused in any React application that needs schema-driven forms with specialized input widgets.

file: packages/ui-components/src/FormEditor.tsx ↗ | tags: #react-component #form-generation #rjsf

A collection of standalone utility functions for validating Kubernetes resource names, labels, annotations, and label values. Includes sanitization and compliance checks per K8s specifications. These functions have no internal dependencies and can be copied into any Python project that interacts with Kubernetes APIs.

file: elyra/util/kubernetes.py ↗ | tags: #kubernetes #validation #utilities
Last analyzed: 2026-09-06 14:18:20.365864
Next check: 2026-09-13 14:18:20.360549
$ submit: