Skip to content

Contributing

The full guide is CONTRIBUTING.md in the repository. In short:

You need Go 1.27 and Node.js 22.22.2 or a later 22.x, 24.15 or a later 24.x, or 26 and later.

Terminal window
git clone https://github.com/kubeglass/kubeglass.git
cd kubeglass
cd web && npm ci && cd ..
make dev # server on :8090
make dev-ui # UI on :3000, proxying to :8090

make dev rebuilds and restarts the server when a Go or config file changes if air is installed; its settings are in .air.toml. make demo runs a built binary with sample data.

Terminal window
make check # Go and TypeScript lint, Go tests with -race, UI tests, chart lint
make e2e # Playwright, against the UI dev server
  • Sign off every commit (git commit -s); CI checks for the Signed-off-by line.
  • Use Conventional Commit prefixes such as feat:, fix: and docs:.
  • Keep a pull request to one change and explain why it is needed.

There are no pages per kind. The kind registry in web/src/kinds describes every kind the cluster serves, and one list page and one detail page serve them all. Status and problems come from the server’s summaries (internal/status). web/ARCHITECTURE.md explains navigation, the registry and the list in detail.

All text in the UI comes from web/src/i18n/locales/en.json through t() or <Trans>. Keep each sentence in one message and use _one / _other keys for counts. node scripts/i18n.mjs scan (in web/) finds hard-coded strings.

These pages live in site/src/content/docs/docs/. Run npm run dev in site/ to preview the website and the docs on port 4000. In site/, npm run screenshots takes the screenshots again from the demo, and npm run generate-images makes the favicons, the app icons and og.png from the logo.