cncf / cncf/mentoring

[CNCF LFX Proposal] Headlamp Velero Plugin

Open
#1,995 25 comments 1 reaction 0 assignees View on GitHub
2026 Exported lfx mentorship Mentors Confirmed Over Quota Proposal Term 3: Sept-Nov Validation Failed
Dominant language
JavaScript
Stars
3.1k
Forks
816
Avg merge
12h 32m
Merged PRs (30d)
8

Description

### CNCF Project

Headlamp

### Term

2026 Term 3 (Sep-Nov)

### Program Name

Velero Backup Management Plugin

### Program Description

## Description

[Velero](https://velero.io) is the most widely adopted CNCF project for Kubernetes backup, restore, and disaster recovery. It manages cluster state and persistent volumes through a set of CRDs (Backups, Restores, Schedules, BackupStorageLocations, VolumeSnapshotLocations). Today, Velero has no graphical interface, operators rely entirely on the `velero` CLI and `kubectl` to manage backup operations, inspect failures, and monitor schedule health.

[Headlamp](https://headlamp.dev) provides an extensible Kubernetes UI with a growing plugin ecosystem for CNCF projects including Flux, KEDA, Knative, and Kubeflow. This project adds Velero to that ecosystem by building a Headlamp plugin that gives cluster operators a web UI for day-to-day backup management.

The mentee will develop a TypeScript/React plugin using the Headlamp plugin SDK that reads and interacts with Velero's CRDs via the Kubernetes API. The plugin will follow existing Headlamp plugin conventions (sidebar registration, list/detail views, status indicators) established by plugins like Flux and Knative.

## Expected outcomes

- A "Velero" sidebar section in Headlamp with sub-items for each resource type
- List views for Backups, Restores, and Schedules displaying name, status, timestamps, and included/excluded resources
- Detail views for each resource showing full spec, status conditions, phase progression, and related resources (e.g., a Backup's associated Restore objects)
- List and detail views for BackupStorageLocations and VolumeSnapshotLocations with availability status
- Ability to create on-demand Backups and Restores from the UI via Kubernetes API calls
- An overview dashboard summarizing backup health: recent backup status, schedule adherence, and storage location availability
- Unit tests and plugin documentation
- Plugin published to the headlamp-k8s/plugins repository
- A blog post on the Kubernetes blog showcasing the plugin
- Maps integration, Velero resources displayed on the Headlamp map view

### Technologies

TypeScript, React, Kubernetes, Headlamp Plugin SDK, Velero CRDs

### Skills same as Technologies?

- [ ] Yes, the required skills are the same as the technologies listed above.

### Required/Desirable Skills

TypeScript, React, Kubernetes fundamentals (CRDs, RBAC, API resources), UI/UX design basics

### Mentors

Rene Dudfield | @illume | renedudfield@microsoft.com | illume
Shubham Pampattiwar | @shubham-pampattiwar | spampatt@redhat.com | spampatt
Daniel Jiang | @reasonerjt| [daniel.jiang@broadcom.com](mailto:daniel.jiang@broadcom.com) | danieljt

### Upstream Issue URL

https://github.com/headlamp-k8s/plugins/issues/939

### Application Prerequisites

- [x] Resume
- [x] Cover Letter
- [ ] School Enrollment Verification
- [ ] Participation Permission from school or employer
- [ ] Coding Challenge
- [ ] Custom Prerequisite (fill in details below)

### Coding Challenge URL

_No response_

### Custom Prerequisite Name

_No response_

### Custom Prerequisite Description

_No response_

### Custom Prerequisite — File Upload

- [ ] Yes — completion of this task requires the mentee to submit a file.

---
**LFX program:** [CNCF - Headlamp: Velero Backup Management Plugin (2026 Term 3)](https://mentorship.lfx.linuxfoundation.org/project/6ae7ef5c-c090-4c08-b4b8-f13d8f6aed9e)

Contributor guide

Open the contributing guide

Research direction

Begin with upstream issue 939 and inspect the existing Flux and Knative plugins for Headlamp plugin conventions, including sidebar registration and list/detail views. Done means a published Velero plugin with the requested resource views, create actions, health dashboard, map integration, unit tests, documentation, and blog post.

Written by the indexing model from the issue text.

Assessment

Tech stack
kubernetes, react, typescript
Domain
devops, frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.