You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
**Mentors:**Griffin Sullivan ([@Griffin-Sullivan](https://github.com/Griffin-Sullivan)), Julius von Kohout ([@juliusvonkohout](https://github.com/juliusvonkohout))
53
53
54
54
**Overview:**
55
-
Brief description of the project.
55
+
This project revived and modernized the KServe Models Web Application (Angular + Flask), the UI used to manage machine learning inference services in Kubeflow via KServe. What began as a small Node.js update evolved into a comprehensive upgrade of the frontend stack, CI/CD, testing, and feature set—bringing the app up to modern standards and making it easier for both users and contributors to work with.
56
56
57
57
**Key Outcomes:**
58
-
- Item 1
59
-
- Item 2
60
-
- Item 3
58
+
- Modernized core stack: upgraded Node.js (v16 → v23) and Angular (v12 → v14), resolving security issues and improving performance
59
+
- Migrated container images from Docker Hub to GitHub Container Registry (GHCR) to avoid rate limits and improve reliability
60
+
- Overhauled CI/CD with GitHub Actions: updated actions, added intelligent caching for pip, Docker layers, and node_modules for significantly faster builds
61
+
- Introduced Jest unit tests for core utilities (e.g., parsing Kubernetes object statuses and KServe predictor configs)
62
+
- Added Cypress end-to-end tests for critical user journeys (deploy, edit, delete) including failure handling and input validation
63
+
- Wrote comprehensive documentation to help contributors run and extend the test suites
64
+
- Shipped “Edit InferenceService YAML” directly in the UI via an integrated Monaco editor—no kubectl required
65
+
- Fixed RawDeployment-mode crash and added ModelMesh support so resources and statuses render correctly
66
+
- Added support for the latest KServe predictor runtimes, including HuggingFace
67
+
- Simplified contributor onboarding with a Makefile that automates full frontend setup in a single command
68
+
- Implemented runtime-configurable settings via a new `/api/config` endpoint (e.g., Grafana DB names, URL prefixes)
69
+
- Cut the v0.15.0 release of the Models Web App, consolidating months of modernization and feature work
70
+
71
+
**By the Numbers:**
72
+
- PRs merged: 19
73
+
- Issues closed: 8
74
+
- Lines of code changed: +22,309 / −11,628
75
+
- Frontend: Angular, TypeScript, SCSS
76
+
- Backend: Flask (Python)
77
+
- CI/CD: GitHub Actions, Docker
78
+
- Local cluster: Kubernetes (Kind) + Istio + Kubeflow
0 commit comments