JavaScript / TypeScript Usage

The @ska-telescope/skuid npm package provides Snowflake-based SKUID generation for JavaScript and TypeScript browser or Node.js applications.

Installation

Using npm:

npm install @ska-telescope/skuid

Using yarn:

yarn add @ska-telescope/skuid

Creating a SKUID

mintSkuid() is the primary function. It always returns the short form (type-<base32>) of SKUID.

import { mintSkuid, Entity } from '@ska-telescope/skuid';

const skuid = mintSkuid(Entity.SBD);
console.log(skuid);  // e.g.  sbd-6txs9jhxnk7

Setting a Generator ID

makeGeneratorId() deterministically hashes any string to a 10-bit integer (0–1023) appropriate for use as a generator ID.

import { makeGeneratorId, mintSkuid, Entity } from '@ska-telescope/skuid';

const generatorId: bigint = makeGeneratorId('my-service-instance');
const skuid = mintSkuid(Entity.SBD, generatorId);
console.log(skuid);  // e.g.  sbd-2q7kxhp3y8n