Skip to content

Kuma SDK built with TypeScript, supporting both web and Node environments.

License

Notifications You must be signed in to change notification settings

kumabid/kuma-sdk-js

Repository files navigation

Kuma Typescript/Javascript SDK

The official Typescript/Javascript SDK for Kuma v1 REST and WebSocket APIs.

Discord GitHub npm GitHub issues Twitter Follow


Summary

  • 🔥 Built with TypeScript - Provides a TypeScript/JavaScript SDK for the Kuma v1 REST and WebSocket APIs.
  • Powerful Documentation - Provides complete inline IDE documentation and matching 📖 typedoc-generated reference documentation.
  • 🦺 End-to-End type safety - The SDK types are used by Kuma servers and clients so enumerations and types are always up-to-date and accurate.
  • 🌐 Universal Compatibility - Optimized to work in both Node.js and browser environments for maximum compatibility.

Links & Resource

Installation

npm install @kumabid/kuma-sdk@beta

Getting Started

import * as kuma from '@kumabid/kuma-sdk';

// const publicClient = new kuma.RestPublicClient();
// or, for sandbox API:
const publicClient = new kuma.RestPublicClient({
  // no params required for production api client
  sandbox: true,
});

const authenticatedClient = new kuma.RestAuthenticatedClient({
  sandbox: false,

  // fill these in with your own walletPrivateKey/apiKey/apiSecret
  walletPrivateKey: '0x...',
  apiKey: '1e7c4f52-4af7-4e1b-aa94-94fac8d931aa',
  apiSecret: 'ufuh3ywgg854aq7m73oy6gnnpj5ar9a67szuw5lclbz77zqu0j',
});

const markets = await publicClient.getMarkets();

const wallets = await authenticatedClient.getWallets();

Node Versions

Minimum supported version is Node v16 with support for import/export map resolution.

The sdk should work with any JavaScript environment that supports import maps & export maps.

Typescript Support

Your tsconfig/jsconfig must be setup to ensure TypeScript handles import/export map resolution. This is generally done by setting module and moduleResolution to Node16 or NodeNext.

See resolvePackageJsonExports and resolvePacakageJsonImports configuration reference for additional details.

JavaScript

JavaScript is fully supported, however, it is recommended to add // @ts-check at the top of your files so your IDE will inform you of any type-related errors in your code!

Typechain

Typechain types and factories for contracts are available by importing them from /typechain export directly, they are not exported from the main export.

import * as typechain from '@kumabid/kuma-sdk/typechain';

License

The Kuma JavaScript SDK is released under the MIT License.