MCPcopy
hub / github.com/kubernetes-sigs/headlamp

github.com/kubernetes-sigs/headlamp @headlamp-helm-0.43.0 sqlite

repository ↗ · DeepWiki ↗ · release headlamp-helm-0.43.0 ↗
4,660 symbols 14,601 edges 1,120 files 997 documented · 21%
README

Headlamp

NOTICE: We have recently moved the project under the Kubernetes SIG UI (and the repo under the kubernetes-sigs org). Container images are still at ghcr.io. Please bear with us while we may experience some broken links.

OpenSSF Best Practices OpenSSF Scorecard FOSSA Status

Headlamp is an easy-to-use and extensible Kubernetes web UI.

Headlamp was created to blend the traditional feature set of other web UIs/dashboards (i.e., to list and view resources) with added functionality.

Features

  • Vendor-independent / generic Kubernetes UI
  • Works in-cluster, or locally as a desktop app
  • Multi-cluster
  • Extensible through plugins
  • UI controls reflecting user roles (no deletion/update if not allowed)
  • Clean & modern UI
  • Cancellable creation/update/deletion operations
  • Logs, exec, and resource editor with documentation
  • Read-write / interactive (actions based on permissions)

Screenshots

Quickstart

If you want to deploy Headlamp in your cluster, check out the instructions on running it in-cluster.

If you have a kubeconfig already, you can quickly try Headlamp locally as a desktop application for Linux, Mac, or Windows. Make sure you have a kubeconfig file set up with your favorite clusters and in the default path so Headlamp can use it.

Accessing

Headlamp uses RBAC for checking users' access to resources. If you try Headlamp with a token that has very limited permissions, you may not be able to view your cluster resources correctly.

See the documentation on how to easily get a Service Account token for your cluster.

Quick Start for Contributors

Want to hack on Headlamp? We'd love your help!

Check out the Contributing Guidelines for detailed instructions on setting up your local development environment, building the project, and platform-specific tips (including Apple Silicon and macOS).

For more in-depth development docs, see the Development Guide.

Tested platforms

We maintain a list of the Kubernetes platforms we have tested Headlamp with. We invite you to add any missing platforms you have tested, or comment if there are any regressions in the existing ones.

Extensions / Plugins

Please see headlamp plugins on Artifact Hub for a list of plugins published.

See the plugins repo for some official plugins.

Plugin development

If you are interested in tweaking Headlamp to fit your use-cases, you can check out our plugin development guide.

Get involved

Check out our: - Guidelines - Code of Conduct, - #headlamp slack channel in the Kubernetes Slack - Monthly Community Meeting

Roadmap / Release Planning

If you are interested in the direction of the project, we maintain a Roadmap. It has the biggest changes planned so far, as well as a board tracking each release.

License

Headlamp is released under the terms of the Apache 2.0 license.

Frequently Asked Questions

For more information about Headlamp, see the Headlamp FAQ.

Extension points exported contracts — how you extend this code

ServiceConnection (Interface)
ServiceConnection represents a connection to a service. [5 implementers]
backend/pkg/serviceproxy/connection.go
ProgressResp (Interface)
* Interface for the response from a plugin manager progress event. * * @interface * @property {string} type - The typ
frontend/src/components/App/pluginManager.ts
ProgressResp (Interface)
* `ProgressResp` is an interface for progress response. * * @interface * @property {string} type - The type of the pr
app/electron/plugin-management.ts
ReleaseAsset (Interface)
(no doc)
tools/releaser/src/utils/github.ts
TranslationCounts (Interface)
(no doc)
tools/i18n/src/lib/types.ts
DefaultTheme (Interface)
(no doc)
plugins/headlamp-plugin/src/index.ts
MessageProps (Interface)
(no doc)
plugins/examples/pod-counter/src/Message.tsx
Cache (Interface)
Cache is an interface for a cache that can be used to store and retrieve values. [1 implementers]
backend/pkg/cache/cache.go

Core symbols most depended-on inside this repo

get
called by 487
frontend/src/plugin/configStore.ts
Error
called by 339
backend/pkg/kubeconfig/kubeconfig.go
useTranslation
called by 296
frontend/src/plugin/pluginI18n.ts
Run
called by 199
backend/pkg/clusterinventory/clusterinventory.go
Close
called by 194
backend/pkg/cache/cache.go
Get
called by 169
backend/pkg/cache/cache.go
Set
called by 146
backend/pkg/cache/cache.go
getCluster
called by 72
frontend/src/lib/cluster.ts

Shape

Function 3,056
Method 730
Interface 566
Class 189
Struct 105
Enum 10
FuncType 3
TypeAlias 1

Languages

TypeScript73%
Go27%

Modules by API surface

backend/cmd/headlamp.go88 symbols
backend/cmd/headlamp_test.go75 symbols
frontend/src/components/common/Resource/Resource.tsx61 symbols
backend/pkg/kubeconfig/kubeconfig.go60 symbols
backend/pkg/clusterinventory/clusterinventory.go58 symbols
frontend/src/lib/k8s/KubeObject.ts52 symbols
backend/pkg/auth/auth_test.go50 symbols
backend/cmd/multiplexer.go50 symbols
frontend/src/plugin/registry.tsx45 symbols
backend/cmd/multiplexer_test.go44 symbols
plugins/headlamp-plugin/bin/headlamp-plugin.js43 symbols
backend/pkg/clusterinventory/clusterinventory_test.go41 symbols

Dependencies from manifests, versioned

dario.cat/mergov1.0.2 · 1×
github.com/AdaLogics/go-fuzz-headersv0.0.0-2024071610542 · 1×
github.com/Azure/go-ansitermv0.0.0-2025010203350 · 1×
github.com/BurntSushi/tomlv1.6.0 · 1×
github.com/MakeNowJust/heredocv1.0.0 · 1×
github.com/Masterminds/goutilsv1.1.1 · 1×
github.com/Masterminds/semver/v3v3.5.0 · 1×
github.com/Masterminds/sprig/v3v3.3.0 · 1×
github.com/asaskevich/govalidatorv0.0.0-2023030114320 · 1×
github.com/beorn7/perksv1.0.1 · 1×
github.com/blang/semver/v4v4.0.0 · 1×

For agents

$ claude mcp add headlamp \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact