New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

@shelby-protocol/sdk

Package Overview
Dependencies
Maintainers
1
Versions
21
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@shelby-protocol/sdk

A TypeScript SDK providing core encoding and decoding utilities for both Node.js and browser environments.

latest
npmnpm
Version
0.3.0
Version published
Weekly downloads
881
-19.62%
Maintainers
1
Weekly downloads
 
Created
Source

@shelby-protocol/sdk

A TypeScript SDK providing core encoding and decoding utilities for both Node.js and browser environments.

Installation

# Installing the shelby sdk
pnpm install @shelby-protocol/sdk @aptos-labs/ts-sdk

Usage

Depending on your runtime environment, import from one of the following entrypoints:

Node.js

import { ShelbyNodeClient } from '@shelby-protocol/sdk/node';

// Your code here...

Browser

import { ShelbyBlob } from '@shelby-protocol/sdk/browser';

// Your code here...

Working with Erasure Coding Providers

The SDK supports two patterns for managing erasure coding providers:

import { ShelbyClient } from '@shelby-protocol/sdk';

// Provider is created internally on first use
const client = new ShelbyClient(config);

// The client will automatically create and manage the provider
await client.upload({
  blobData: data,
  signer: account,
  blobName: "example.txt",
  expirationMicros: Date.now() * 1000 + 3600_000_000,
});

Shared Provider Pattern (For advanced use cases)

When working with multiple clients (e.g., different networks), you can share a single provider instance:

import { ShelbyClient, ClayErasureCodingProvider } from '@shelby-protocol/sdk';

// Create a single provider instance
const provider = await ClayErasureCodingProvider.create();

// Share it across multiple clients
const mainnetClient = new ShelbyClient(mainnetConfig, provider);
const devnetClient = new ShelbyClient(devnetConfig, provider);
const testnetClient = new ShelbyClient(testnetConfig, provider);

// All clients use the same provider instance
await mainnetClient.upload({ /* ... */ });
await devnetClient.upload({ /* ... */ });

Peer Dependencies

  • @aptos-labs/ts-sdk

Scripts

npm run build      # compile TypeScript to dist/
npm run test       # watch mode with Vitest
npm run test:once  # single-run tests
npm run lint       # run biome diagnostics
npm run fmt        # auto-format with biome

Please import the entrypoint that matches your environment (/node, /browser, or the root) to ensure you get the correct implementation and avoid missing-module errors.

FAQs

Package last updated on 27 Mar 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts