Skip to content

CloudPSS/zstd

Repository files navigation

@cloudpss/zstd

check Codacy coverage Codacy Badge npm version

This is a pure esm package contains the zstd n-api addon for node.js & wasm for browsers.

Installation

npm install @cloudpss/zstd

Usage

import { compress, decompress } from '@cloudpss/zstd';

const compressed = await compress(Buffer.from('Hello World!'));
const decompressed = await decompress(compressed);

console.log(decompressed.toString()); // Hello World!

To explicitly use the wasm or the n-api version, import @cloudpss/zstd/wasm and @cloudpss/zstd/napi respectively.

API

Module @cloudpss/zstd / @cloudpss/zstd/wasm / @cloudpss/zstd/napi

Note

If you are using this library in a browser, the Buffer classes is replaced with Uint8Array classes.

compress(input: BinaryData, level?: number): Promise<Buffer>
compressSync(input: BinaryData, level?: number): Buffer

Compresses the input buffer with the given compression level (default: 4).

decompress(input: BinaryData): Promise<Buffer>
decompressSync(input: BinaryData): Buffer

Decompresses the input buffer.

TYPE: 'napi' | 'wasm'

The type of the current module.

ZSTD_VERSION(): string

The version of the zstd library.

Module @cloudpss/zstd/config

MAX_SIZE: number

The maximum size of the input/output buffer.

DEFAULT_LEVEL: number

The default compression level.

MIN_LEVEL: number

Minimum compression level.

MAX_LEVEL: number

Maximum compression level.

License

MIT