Globus SDK for JavaScript

Help guide the development of the @globus/sdk by reporting issues or suggesting features!


npm Codecov

The Globus SDK for JavaScript provides first class TypeScript support and makes it easy to call Globus services using idiomatic JavaScript APIs to build Node.js and web applications.

If you are not using Typescript, you can install the SDK with the following command:

npm install @globus/sdk

@globus/sdk is written in Typescript and includes type definitions for its internal types, Globus platform types (i.e., API responses) are provided by the @globus/types package and must be installed separately.

npm install @globus/sdk @globus/types

We aim to support all Active LTS Node.js releases. We intend to support all Maintenance LTS versions until their official end-of-life.

Version
Node.js 18 lts/hydrogen
Node.js 20 lts/iron
Node.js 22 lts/iron

Officially, the SDK supports widely adopted evergreen browsers: Edge, Chrome, Safari, and Firefox. Our bundled browser distributions target ECMAScript 2015 (ES6), which has broader browser support but may not be explicitly evaluated.

Browser
Google Chrome playwright
Mozilla Firefox playwright
Microsoft Edge playwright
Apple Safari playwright

We distribute our package targeting three different module systems: ESM, CommonJS, and UMD.

The ESM distribution is the module export of the package.

import { transfer } from '@globus/sdk';
import { GCS } from '@globus/sdk/constants';

The CommonJS distribution is the main export of the package. It is intended for use in Node.js applications and environments that support the require statement.

const { transfer } = require('@globus/sdk');

You can also explicitly use the cjs namespace to import a CommonJS entrypoint.

const transfer = require('@globus/sdk/cjs').transfer;
// or, import { transfer } from '@globus/sdk/cjs';

The UMD distribution is provided for use in web applications and environments that do not support ESM or CommonJS. Referencing the UMD distribution as a <script> tag will provide a global variable globus that contains all default exports from the package.

<script src="https://unpkg.com/@globus/sdk/dist/umd/globus.production.js"></script>

Currently, the UMD distribution only provides the default entrypoint for the package.