open-index/open-npm huggingface dataset:
npm package: @headlamp-k8s/backstage-plugin-headlamp
Description: The Headlamp plugin for Backstage embeds the Headlamp UI within your Backstage instance using an iframe. The plugin can be used in two modes:
Latest version: 0.1.0-beta-3

# Headlamp Plugin (beta)

The Headlamp plugin for Backstage embeds the Headlamp UI within your Backstage instance using an iframe. The plugin can be used in two modes:

1. **Standalone Mode**: 
   - Simply displays an existing Headlamp instance using the URL configured in `app-config.yaml`
   - Requires only configuring the `headlamp.url` parameter

2. **Backend Integration Mode**:
   - Works in conjunction with the headlamp-backend plugin
   - Automatically starts a Headlamp server instance
   - Uses the Kubernetes context specified in your `app-config.yaml` for interoperability with the backstage kubernetes plugin
   - Provides a more integrated experience within Backstage

## Configuration

The Headlamp plugin is configured by setting the `headlamp.url` in the `app-config.yaml` file.

### 1. Install the plugin
```bash
yarn --cwd packages/app add @headlamp-k8s/backstage-plugin-headlamp
```

### 2. Add Headlamp route to `packages/app/src/App.tsx`

Add the following import
```tsx
import { HeadlampPage } from '@headlamp-k8s/backstage-plugin-headlamp';
```

Add the following route to the const routes
```tsx
const routes = [
    <FlatRoutes>
    ...
    <Route path="/headlamp" element={<HeadlampPage />} />
    </FlatRoutes>
]
```

### 3. Add Headlamp to the Sidebar

Add the following import to `packages/app/src/components/Root/Root.tsx`

```tsx
import { HeadlampIcon } from '@headlamp-k8s/backstage-plugin-headlamp';  
```

Add the SidebarItem within any SidebarGroup in your Root component:

```tsx
export const Root = ({ children }: PropsWithChildren<{}>) => (
  <SidebarPage>
    <Sidebar>
        <SidebarItem icon={HeadlampIcon} to="headlamp" text="Headlamp" />
        {/* ... other items ... */}
    </Sidebar>
    {children}
  </SidebarPage>
);
```

### 4. Configure Headlamp url (Optional)

If you are deploying the Headlamp backend plugin ie using the backend integration mode, you can configure the url of the Headlamp instance by setting the `headlamp.url` parameter in the `app-config.yaml` file.

example:
```yaml
headlamp:
  url: https://headlamp.example.com
```
npm package: @headlamp-k8s/backstage-plugin-headlamp-backend
Description: The Headlamp Backend plugin provides endpoints for  starting the headlamp server binary with the kubernetes context specified in the `app-config.yaml` file. It also provides an endpoint for refreshing the kubeconfig file used by the headlamp server.
Latest version: 0.1.0-beta-5

# Headlamp Backend Plugin (beta)

The Headlamp Backend plugin provides endpoints for 
starting the headlamp server binary with the kubernetes context specified in the `app-config.yaml` file. It also provides an endpoint for refreshing the kubeconfig file used by the headlamp server.

## Configuration

The Headlamp Backend plugin is configured by setting the `headlampBackend.binaryPath` in the `app-config.yaml` file. For example:

### 1. Install the plugin
```bash
yarn --cwd packages/backend add @headlamp-k8s/backstage-plugin-headlamp-backend
```

### 2. Add backend plugin to `packages/backend/src/index.ts`

```
...
backend.add(import('@headlamp-k8s/backstage-plugin-headlamp-backend'));
```

### 3. Configure Headlamp Backend (Optional)

If you want to use a custom headlamp binary or custom plugins you can set the `headlampBackend.binaryPath` and `headlampBackend.pluginsPath` parameters in the `app-config.yaml` file.

example:
```yaml
headlampBackend:
  binaryPath: /path/to/headlamp/binary
  pluginsPath: /path/to/headlamp/plugins
```
npm package: @headlamp-k8s/eslint-config
Description: Lint rules for Headlamp TypeScript projects
Author: Headlamp developers
Latest version: 0.7.0

# Lint Config

This is a shareable ESLint/Prettier/TS config we use inside Headlamp for
our Javascript/Typescript projects.

## Installation

Install the config from NPM by using the following command:

`npm install --save-dev @headlamp-k8s/eslint-config`

Install also the peer dependencies NPM suggested (if they're not installed
automatically).

You can include it in your `package.json` file like the following:

```js
  "eslintConfig": {
    "extends": ["@headlamp-k8s", "prettier", "prettier/react"]
  },
  "prettier": "@headlamp-k8s/eslint-config/prettier-config",
```

## Development

Eslint rules should be modified in the `.eslintrc.yml` file in this repo.

### Generate index.js

The `index.js` file is generated from `.eslintrc.yml`, and can be generated using:

`make`

## License

lint-config is licensed under Apache 2.0.