npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@gibme/starlink

v22.0.1

Published

A Package for interacting with various Starlink API(s)

Readme

Starlink API Tooling

This package is not affiliated with or acting on behalf of Starlink™️

Requirements

  • Node.js >= 22

Installation

npm install @gibme/starlink

or

yarn add @gibme/starlink

Features

Local Device API (gRPC)

Communicate directly with Starlink hardware on your local network via gRPC.

  • Dishy (Satellite Dish)
    • fetch_diagnostics() - Detailed diagnostics including alerts, tests, and location
    • fetch_status() - Current device status
    • fetch_history() - Connection history data
    • fetch_location() - GPS location (requires location enabled in dish settings)
    • fetch_obstruction_map() - Obstruction map data
    • reboot() - Issue a reboot command
    • stow() / unstow() - Stow or deploy the dish
  • WiFi Router
    • fetch_diagnostics() - Router diagnostics and network information

Enterprise API (Enterprise API Access Required)

Full enterprise account management via the Starlink REST API.

  • Account Management - Fetch and manage enterprise accounts
  • Address Management - Create, fetch, update addresses; check service capacity at a location
  • Service Lines - Create, fetch, and remove service lines; fetch daily usage and billing periods
  • User Terminals - Add, fetch, and remove terminals; search by UT ID, serial, or kit serial
  • Router Configuration - Create, fetch, update, and deploy router configs
  • Products & Billing - Fetch available subscription products and real-time data usage tracking
  • Telemetry - Stream real-time device telemetry including router telemetry, terminal telemetry, data usage, IP allocations, and active alerts

Subpath Imports

The package provides focused entry points for tree-shaking or targeted imports:

| Import Path | Description | |---|---| | @gibme/starlink | Full API (enterprise + local devices + utilities) | | @gibme/starlink/enterprise | Enterprise API only | | @gibme/starlink/dishy | Local Dishy device API only | | @gibme/starlink/wifirouter | Local WiFi Router device API only |

Utility Functions

  • gpsTimeToUTC(gpsTimeS) - Convert GPS time (seconds since 1980-01-06 UTC) to a UTC timestamp
  • gpsTimeToUTCDate(gpsTimeS) - Convert GPS time to a Date object in UTC

Special Notice

  • The package build process generates TypeScript code from *.proto definitions into ./src/protobuf/spacex

    • The protoc binary is required to build the TypeScript files
      • Ubuntu: apt install protobuf-compiler
      • Mac OSX: brew install protobuf
      • Windows: choco install protoc
    • If you are working on this package, or load this package from git, you will need to manually run yarn build:protobuf to generate the protobuf code
  • The Device API calls listed above were tested as working against the following software versions; for all other versions, your mileage may vary:

    • Dishy
      • 186897dc-8910-40f9-bb84-c53a5e8404c9.uterm_manifest.release

Documentation

https://gibme-npm.github.io/starlink/

Sample Code

Dishy

import { Dishy } from '@gibme/starlink/dishy';

const dishy = new Dishy();

const diagnostics = await dishy.fetch_diagnostics();

console.log(diagnostics);

WiFi Router

import { WiFiRouter } from '@gibme/starlink/wifirouter';

const router = new WiFiRouter();

const diagnostics = await router.fetch_diagnostics();

console.log(diagnostics);

Enterprise API

import { StarlinkAPI } from '@gibme/starlink/enterprise';

const api = new StarlinkAPI('<client_id>', '<client_secret>');

const accounts = await api.fetch_accounts();

const data = await accounts[0].fetch_realtime_data_tracking();

console.log(data);

Telemetry Streaming

import { StarlinkAPI } from '@gibme/starlink/enterprise';

const api = new StarlinkAPI('<client_id>', '<client_secret>');

const accounts = await api.fetch_accounts();

const telemetry = await accounts[0].telemetry();

console.log(telemetry);

Thanks

Many thanks go to starlink-rs for the older version of the base Protocol Buffers definitions for the gRPC server.