Introduction

A Deno-first, NPM-compatible TypeScript SDK for the GRVT Exchangearrow-up-right.

npm install @wezzcoetzee/grvt

Features

Type Safe

Full TypeScript support with typed requests, responses, and enums

Minimal Dependencies

Only 3 dependencies: @noble/hashes, micro-eth-signer, valibot

Universal

Works in Deno, Node.js, Bun, and browsers

Multiple Transports

HTTP for requests, WebSocket for real-time streams

Wallet Support

Native signer, viem, and ethers v5/v6 compatibility

Tree Shakeable

Import only what you need with modular exports

Quick Examples

import { GrvtEnv, GrvtRawClient } from "@wezzcoetzee/grvt";

const client = new GrvtRawClient({
  env: GrvtEnv.TESTNET,
});

// Fetch all active instruments
const instruments = await client.getAllInstruments({ is_active: true });
console.log(instruments.result);

// Fetch ticker for BTC perpetual
const ticker = await client.getTicker({ instrument: "BTC_USDT_Perp" });
console.log(ticker.result.last_price);

Client Types

Client
Description
Use Case

GrvtRawClient

Low-level API client with typed methods

Direct API access, custom logic

GrvtClient

CCXT-style high-level client

Trading bots, familiar API

HttpTransport

HTTP transport only

Custom client implementations

WebSocketTransport

WebSocket transport only

Real-time data streams

Next Steps

Last updated