JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 4510
  • Score
    100M100P100Q122487F
  • License BSD-2-Clause

compress and decompress using system-installed zstd and unzstd

Package Exports

  • zstd.ts

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (zstd.ts) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

zstd.ts

compress and decompress using system-installed zstd and unzstd

npm Package Version

Features

  • Typescript support
  • Support sync mode
  • Support async mode
  • Tested with mocha
  • No dependency on other packages

Usage Example

import { compress, decompress } from 'zstd.ts'
import { compressSync, decompressSync } from 'zstd.ts'

let compressed: Buffer = compressSync({ input: 'test' })
let uncompressed: Buffer = decompressSync({ input: compressed })
let matched = uncompressed.toString() == 'test'
console.log(matched) // true

Typescript Signature

export type CompressOptions = {
  compressLevel?: number // range: 1 - 19 (default level is 3)
  input: string | Buffer
}

export function compressSync(options: CompressOptions): Buffer

export function compress(options: CompressOptions): Promise<Buffer>
export function compress(
  options: CompressOptions,
  callback: (error: any, buffer: Buffer) => void,
): void

export type DecompressOptions = {
  input: Buffer
}

export function decompressSync(options: DecompressOptions): Buffer

export function decompress(options: DecompressOptions): Promise<Buffer>
export function decompress(
  options: DecompressOptions,
  callback: (error: any, buffer: Buffer) => void,
): void

License

This project is licensed with BSD-2-Clause

This is free, libre, and open-source software. It comes down to four essential freedoms [ref]:

  • The freedom to run the program as you wish, for any purpose
  • The freedom to study how the program works, and change it so it does your computing as you wish
  • The freedom to redistribute copies so you can help others
  • The freedom to distribute copies of your modified versions to others