open-index/open-npm huggingface dataset:
npm package: @ska-octopus-widgets/filter-widget
Description: Filter widget (generated 2025)
Latest version: 0.1.6

# Filter Widget

Generated automatically on 2025-07-24 by **ska-octopus-widget scaffolder\***.

## Quick start

```bash
git clone &lt;repo-url&gt; filter
cd filter
npm install
npm run dev
```

## Scaffold inputs

_No variables_
npm package: @ska-octopus-widgets/geo-map-widget
Description: GeoMap widget (generated 2025)
Latest version: 0.1.9

    # GeoMap Widget

Generated automatically on 2025-08-27 by ska-octopus-widget scaffolder.

    ## Quick start

    ```bash
    git clone &lt;repo-url&gt; geo-map
    cd geo-map
    npm install
    npm run dev
    ```

    ## Scaffold inputs

    | Name | Default | GraphQL type |

|------|---------|--------------|
| fullNames | `"\"fullNames\": [     \"low-mccs/station/s8-1/healthState\",     \"low-mccs/station/s8-1/healthreport\",     \"low-mccs/spsstation/s8-1/healthState\",     \"low-mccs/spsstation/s8-1/healthReport\"   ]"` | `[String!]!` |
npm package: @ska-octopus-widgets/gitlab-health-widget
Description: GitlabHealth widget (generated 2025)
Latest version: 0.1.16

# GitlabHealth Widget

Generated automatically on 2025-06-20 by **ska-octopus-widget scaffolder\***.

## Quick start

```bash
git clone <repo-url> gitlab-health
cd gitlab-health
npm install
npm run dev
```

## Scaffold inputs

_No variables_
npm package: @ska-octopus-widgets/graph-widget
Description: Graph widget (generated 2025) - live spectrum plotting
Latest version: 0.1.8

# Graph Widget

Generated automatically on 2025-08-25 by **ska-octopus-widget scaffolder\***.

## Quick start

```bash
git clone &lt;repo-url&gt; graph
cd graph
npm install
npm run dev
```

## Scaffold inputs

_No variables_
npm package: @ska-octopus-widgets/hdbpp-live-widget
Description: HDBPPLive widget
Latest version: 0.1.23

# Fetch HDB++ History — How Data Is Served and Plotted

This document explains how `fetch_hdbpp_history` works end-to-end, and how the data is rendered in our line charts and heatmaps.

---

## Line Chart

- For each attribute, the API returns **≈ `returned_points`** (≈ `maxPoints` for `avg`/`lttb`/`none`; ≈ `maxPoints` for `minmax` because it uses `ceil(maxPoints/2)` buckets × 2 points per bucket).
- With **live mode on**, each series is capped to **≤ `maxPoints`** as new packets arrive.

---

## Heatmap

- We render a **global evenly spaced time grid** of  
  `columns = min(maxPoints, 2000)` across the whole window.
- For each **visible attribute row**, we draw exactly `columns` z-values.
- **Total cells = (#visible attributes) × columns**.

---

## How `maxPoints` Is Used End-to-End

### Server (fetch_hdbpp_history)

For each attribute in `[start, end]`:

- **`downsample="avg"`**
  - Buckets = `maxPoints`
  - ~1 point per bucket (timestamp at bucket center)
  - `returned_points ≤ maxPoints`

- **`downsample="minmax"`**
  - Buckets = `ceil(maxPoints/2)`
  - Up to 2 points (min & max) per bucket with real timestamps
  - `returned_points ≤ 2 × buckets ≈ maxPoints` (off by +1 if odd)
  - Empty buckets yield 0 points

- **`downsample="lttb"`**
  - Fetch all raw
  - LTTB reduces to ≤ `maxPoints` (typically exactly `maxPoints`)

- **`downsample="none"`** (or non-numeric fallback)
  - Raw ascending with `LIMIT maxPoints`

➡️ **Server contract:** ≈ `maxPoints` samples per attribute in the history payload.

---

### Client (Our Widget)

- **Line Plot**
  - Plots exactly what the server returns per attribute.
  - For `minmax`, compute midpoint for line/marker; min/max shown as asymmetric error bars.
  - Count of plotted x/y pairs = `returned_points`.
  - With **live mode**, append new points and cap series at `maxPoints`.

- **Heatmap**
  - To avoid “only last ~1h shows” when unions are large, we build a **uniform global timeline** of  
    `columns = min(maxPoints, 2000)` buckets over full window.
  - Each attribute row is forward-filled with its last known value at/before each grid time.
  - Per row → always `columns` z-values.
  - Example: `maxPoints=1000`, 24h selected →
    - each attribute row = 1000 cells
    - 10 visible attributes = 10,000 cells
  - Hard cap at **2000 columns** for Plotly performance.

---

## Concrete Example

- **Range:** last 24h
- **Downsample:** `minmax`
- **maxPoints:** 1000

**Server:** returns ~1000 points per attribute (2 × 500 buckets).  
**Line Plot:** ~1000 points per attribute (with error bars).  
**Heatmap:** 1000 columns across full 24h; each attribute row = 1000 cells;  
total cells = (#visible attributes) × 1000.

---
npm package: @ska-octopus-widgets/hdbpp-table-widget
Description: HdbppTable widget (generated 2025)
Latest version: 0.1.8

# HdbppTable Widget

Generated automatically on 2025-08-07 by **ska-octopus-widget scaffolder\***.

## Quick start

```bash
git clone &lt;repo-url&gt; hdbpp-table
cd hdbpp-table
npm install
npm run dev
```

## Scaffold inputs

_No variables_
npm package: @ska-octopus-widgets/jive-widget
Description: Jive widget (generated 2025)
Latest version: 0.1.25

    # Jive Widget

Generated automatically on 2025-07-30 by **ska-octopus-widget scaffolder\***.

    ## Quick start

    ```bash
    git clone &lt;repo-url&gt; jive
    cd jive
    npm install
    npm run dev
    ```

    ## Scaffold inputs

    | Name | Default | GraphQL type |

|------|---------|--------------|
| argin | `123` | `ScalarTypes` |
| command | `"\"AttributeStatus\""` | `String!` |
| device | `"\"octopus/station/0\""` | `String!` |
| fullNames | `"[\"octopus/station/0\"]"` | `[String!]!` |
| name | `"\"octopus/station/0\""` | `String!` |
npm package: @ska-octopus-widgets/label-widget
Description: Label widget (generated 2025)
Latest version: 0.1.8

# Label Widget

Generated automatically on 2025-07-17 by **ska-octopus-widget scaffolder\***.

## Quick start

```bash
git clone git@gitlab.com:ska-octopus/widgets/octopus-label-widget.git
cd label
npm install
npm run dev
```

## Scaffold inputs

_No variables_
npm package: @ska-octopus-widgets/live-data-widget
Description: LiveData widget (generated 2025)
Latest version: 0.1.20

# LiveData Widget

Generated automatically on 2025-06-20 by ska-octopus-widget scaffolder.

## Quick start

```bash
git clone <repo-url> live-data
cd live-data
npm install
npm run dev
```

## Scaffold inputs

_No variables_
npm package: @ska-octopus-widgets/logs-widget
Description: Logs widget (generated 2025)
Latest version: 0.1.21

        # Logs Widget

        _Generated on 2025-06-05._

        ```bash
        git clone <repo-url> logs
        cd logs
        npm install
        npm run dev
        ```

        ## Scaffold inputs
        | Name | Default | GraphQL type |

|------|---------|--------------|
| fullnames | `"[\"test/tarantatestdevice/station_1/int_ro_001\"]"` | `[String!]` |
npm package: @ska-octopus-widgets/observing-state-widget
Description: ObservingState widget (generated 2025)
Latest version: 0.1.22

    # ObservingState Widget

    _Generated on 2025-06-05._

    ```bash
    git clone <repo-url> observing-state
    cd observing-state
    npm install
    npm run dev
    ```
    ## Scaffold inputs
    | Name | Default | GraphQL type |

|------|---------|--------------|
| argin | `"2.4"` | `ScalarTypes` |
| command | `"DevFloat"` | `String!` |
| device | `"sys/tg_test/1"` | `String!` |
npm package: @ska-octopus-widgets/shared-folders-widget
Description: SharedFolders widget (generated 2025)
Latest version: 0.1.5

# SharedFolders Widget

Generated automatically on 2025-08-07 by **ska-octopus-widget scaffolder\***.

## Quick start

```bash
git clone &lt;repo-url&gt; shared-folders
cd shared-folders
npm install
npm run dev
```

## Scaffold inputs

_No variables_
npm package: @ska-octopus-widgets/ska-octopus-coverage-widget
Description: SkaOctopusCoverage widget (generated 2025)
Latest version: 0.1.2

    # SkaOctopusCoverage Widget

    _Generated on 2025-09-16._

    ```bash
    git clone <repo-url> ska-octopus-coverage
    cd ska-octopus-coverage
    npm install
    npm run dev
    ```

    ## Scaffold inputs

    | Name | Default | GraphQL type |

|------|---------|--------------|
| progressChannel | `1234` | `String!` |
npm package: @ska-octopus-widgets/station-health-widget
Description: StationHealth widget (generated 2025)
Latest version: 0.1.24

# StationHealth Widget

Generated automatically on 2025-06-20 by **ska-octopus-widget scaffolder\***.

## Quick start

```bash
git clone <repo-url> station-health
cd station-health
npm install
npm run dev
```

## Scaffold inputs

_No variables_
npm package: @ska-octopus-widgets/station-sunburst-widget
Description: StationSunburst widget (generated 2025)
Latest version: 0.1.16

# StationSunburst Widget

Generated automatically on 2025-08-14 by **ska-octopus-widget scaffolder\***.

## Quick start

```bash
git clone &lt;repo-url&gt; station-sunburst
cd station-sunburst
npm install
npm run dev
```

## Scaffold inputs

_No variables_
npm package: @ska-octopus-widgets/tango-command-widget
Description: TangoCommand widget (generated 2025)
Latest version: 0.1.21

        # TangoCommand Widget

        _Generated on 2025-06-05._

        ```bash
        git clone <repo-url> tango-command
        cd tango-command
        npm install
        npm run dev
        ```

        ## Scaffold inputs
        | Name | Default | GraphQL type |

|------|---------|--------------|
| argin | `1` | `ScalarTypes` |
| command | `"SetDeviceState"` | `String!` |
| device | `"tg_test"` | `String!` |
npm package: @ska-octopus-widgets/tango-explorer-widget
Description: TangoExplorer widget (generated 2025)
Latest version: 0.1.11

    # TangoExplorer Widget

Generated automatically on 2025-07-28 by **ska-octopus-widget scaffolder\***.

    ## Quick start

    ```bash
    git clone &lt;repo-url&gt; tango-explorer
    cd tango-explorer
    npm install
    npm run dev
    ```

    ## Scaffold inputs

    | Name | Default | GraphQL type |

|------|---------|--------------|
| fullNames | `"[\"sys/database/2/state\", \"dserver/DataBaseds/2/state\"]"` | `[String!]!` |
npm package: @ska-octopus-widgets/tango-table-widget
Description: TangoTable widget (generated 2025)
Latest version: 0.1.20

# TangoTable Widget

Generated automatically on 2025-06-20 by **ska-octopus-widget scaffolder\***.

## Quick start

```bash
git clone <repo-url> tango-table
cd tango-table
npm install
npm run dev
```
npm package: @ska-octopus-widgets/timeline-widget
Description: Timeline widget (generated 2025) - step/bar state timeline with HDB++ history + live stream
Latest version: 0.1.15

    # Timeline Widget

Generated automatically on 2025-07-29 by **ska-octopus-widget scaffolder\***.

    ## Quick start

    ```bash
    git clone &lt;repo-url&gt; timeline
    cd timeline
    npm install
    npm run dev
    ```

    ## Scaffold inputs

    | Name | Default | GraphQL type |

|------|---------|--------------|
| attributes | `"['octopus/station/0/state','octopus/station/1/state','octopus/station/2/state']"` | `[String!]!` |
| end | `0` | `Float` |
| fullNames | `"['octopus/station/0/state','octopus/station/1/state','octopus/station/2/state']"` | `[String!]!` |
| limit | `100` | `Int` |
| start | `0` | `Float` |
npm package: @ska-octopus-widgets/variable-selector-widget
Description: VariableSelector widget (generated 2025)
Latest version: 0.1.6

# VariableSelector Widget

Generated automatically on 2025-08-07 by **ska-octopus-widget scaffolder\***.

## Quick start

```bash
git clone &lt;repo-url&gt; variable-selector
cd variable-selector
npm install
npm run dev
```

## Scaffold inputs

_No variables_