@freelensapp/gateway-api-extension
v0.2.2
Published
Freelens extension for Gateway API
Maintainers
Readme
@freelensapp/gateway-api-extension
Overview
This extension adds support for the Kubernetes Gateway API to Freelens. The Gateway API is an official Kubernetes project that provides expressive, extensible, and role-oriented interfaces for service networking, designed as the successor to the Ingress API.
The extension provides cluster pages, list views, and detail panels for all
standard and experimental Gateway API resources across the
gateway.networking.k8s.io and gateway.networking.x-k8s.io API groups.
Each resource is accessible from the Freelens sidebar, with status
conditions, spec fields, and related objects displayed in the detail view.

Requirements
- Kubernetes >= 1.26
- Freelens >= 1.8.0
- Gateway API CRDs installed in the cluster (see the Gateway API installation guide)
Supported APIs
gateway.networking.k8s.io
| API Version | Kind | Short Name | Scope | Description |
| --- | --- | --- | --- | --- |
| v1 | GatewayClass | gc | Cluster | Defines a class of Gateways sharing a common controller |
| v1 | Gateway | gtw | Namespaced | Describes an instance of a service-traffic handling infrastructure |
| v1 | HTTPRoute | | Namespaced | Routes HTTP and HTTPS traffic to backends |
| v1 | GRPCRoute | | Namespaced | Routes gRPC traffic to backends |
| v1 | TLSRoute | | Namespaced | Routes TLS traffic to backends based on SNI |
| v1 | TCPRoute | | Namespaced | Routes TCP traffic to backends |
| v1 | UDPRoute | | Namespaced | Routes UDP traffic to backends |
| v1 | BackendTLSPolicy | btlspolicy | Namespaced | Configures TLS for connections from a Gateway to backends |
| v1 | ReferenceGrant | refgrant | Namespaced | Allows cross-namespace references to Gateway API resources |
| v1 | ListenerSet | lset | Namespaced | Extends a Gateway with additional listeners |
| v1alpha2 | TCPRoute | | Namespaced | Routes TCP traffic to backends (v1alpha2 variant) |
| v1alpha2 | UDPRoute | | Namespaced | Routes UDP traffic to backends (v1alpha2 variant) |
| v1beta1 | ReferenceGrant | refgrant | Namespaced | Allows cross-namespace references (v1beta1 variant) |
gateway.networking.x-k8s.io
Experimental APIs from the Kubernetes SIG Network incubation group.
| API Version | Kind | Short Name | Scope | Description |
| --- | --- | --- | --- | --- |
| v1alpha1 | XBackendTrafficPolicy | xbtrafficpolicy | Namespaced | Configures backend traffic policies such as retry budgets and session persistence |
| v1alpha1 | XMesh | mesh | Cluster | Describes a service mesh implementation |
Install
To install, open Freelens and go to Extensions (ctrl+shift+E or cmd+shift+E),
then search for and install @freelensapp/gateway-api-extension.
Alternatively, open the following URL in the browser to install directly:
freelens://app/extensions/install/%40freelensapp%2Fgateway-api-extension
Build from the source
You can build the extension from this repository.
Prerequisites
Use NVM, mise-en-place, or windows-nvm to install the required Node.js version.
From the root of this repository:
nvm install
# or
mise install
# or
winget install CoreyButler.NVMforWindows
nvm install 24.15.0
nvm use 24.15.0Install pnpm:
corepack install
# or
curl -fsSL https://get.pnpm.io/install.sh | sh -
# or
winget install pnpm.pnpmBuild extension
pnpm i
pnpm build
pnpm packOne script to build and pack the extension for testing:
pnpm pack:devInstall built extension
The tarball will be placed in the current directory. In Freelens, navigate
to the Extensions page and provide the path to the tarball, or drag and
drop the .tgz file into the Freelens window.
Check code statically
pnpm lint:checkor
pnpm trunk:checkand
pnpm build
pnpm knip:checkTesting the extension with unpublished Freelens
In the Freelens working repository:
rm -f *.tgz
pnpm i
pnpm build
pnpm pack -rThen in the extension repository:
echo "overrides:" >> pnpm-workspace.yaml
for i in ../freelens/*.tgz; do
name=$(tar zxOf $i package/package.json | yq -r .name)
echo " \"$name\": $i" >> pnpm-workspace.yaml
done
pnpm clean:node_modules
pnpm buildLicense
Copyright (c) 2025-2026 Freelens Authors.
