A Zstd Compression Library
81
stars
126
commits
JavaScript
primary language
Sep 1, 2026
updated
Zstandard compression library for Node.js
npm install @mongodb-js/zstd
Releases are created automatically and signed using the Node team's GPG key. All release packages provided as part of a GitHub release are signed. To verify the provided packages, download the key and import it using gpg:
gpg --import node-driver.asc
The GitHub release contains a detached signature file for the NPM package (named
mongodb-js-zstd-X.Y.Z.tgz.sig).
The following command returns the link npm package.
npm view @mongodb-js/zstd@vX.Y.Z dist.tarball
Using the result of the above command, a curl command can return the official npm package for the release.
To verify the integrity of the downloaded package, run the following command:
gpg --verify mongodb-js-zstd-X.Y.Z.tgz.sig mongodb-js-zstd-X.Y.Z.tgz
[!Note] No GPG verification is done when using npm to install the package. The contents of the GitHub tarball and npm's tarball are identical.
To verify the native .node packages, follow the same steps as above using mongodb-js-zstd-X.Y.Z-platform.tgz and the corresponding .sig file.
Releases published to the npm registry also include a provenance attestation, which cryptographically links the package to its source repository and build workflow. To verify provenance:
npm audit signatures
Only the following version combinations with the MongoDB Node.js Driver are considered stable.
@mongodb-js/zstd@1.x | @mongodb-js/zstd@2.x | @mongodb-js/zstd@7.x | |
|---|---|---|---|
mongodb@7.x | N/A | N/A | ✓ |
mongodb@>=6.12 | ^1.1.0 | ✓ | N/A |
mongodb@<6.12 | ^1.1.0 | N/A | N/A |
mongodb@5.x | ✓ | N/A | N/A |
mongodb@4.x | ✓ | N/A | N/A |
mongodb@3.x | N/A | N/A | N/A |
[!Note]
@mongodb-js/zstd@1.xis deprecated - please use@mongodb-js/zstd@2.xinstead.
Below are the platforms that are available as prebuilds on each github release.
prebuild-install downloads these automatically depending on the platform you are running npm install on.
export function compress(buffer: Buffer | ArrayBuffer | Uint8Array, level: number): Promise<Buffer>;
export function decompress(buffer: Buffer): Promise<Buffer>;
This repository uses agentskills.io conventions for AI coding agent
instructions. AGENTS.md is the canonical source of truth — tool-specific files like CLAUDE.md
are generated references.
AGENTS.md in the target directory.git add the file.scripts/symlink-claude-md.sh to generate the companion CLAUDE.md.
scripts/symlink-claude-md.sh is vendored from an internal repo and should not be edited directly.Think you’ve found a bug? Want to see a new feature in @mongodb-js/zstd? Please open a
case in our issue management tool, JIRA:
For issues with, questions about, or feedback for the library, please look into our support channels. Please do not email any of the driver developers directly with issues or questions - you're more likely to get an answer on the MongoDB Community Forums.
Change history can be found in HISTORY.md.
import { compress, decompress } from '@mongodb-js/zstd';
(async () => {
const buffer = Buffer.from('test');
const compressed = await compress(buffer, 10);
const decompressed = await decompress(compressed);
})();
First, install and build the zstd library:
npm run install-zstd
Then build the bindings:
npm run prebuild
Then test:
npm test
JavaScript
43.8%
C++
26.9%
Shell
22.9%
Python
6.4%
A Zstd Compression Library
81
stars
126
commits
JavaScript
primary language
Sep 1, 2026
updated
Zstandard compression library for Node.js
npm install @mongodb-js/zstd
Releases are created automatically and signed using the Node team's GPG key. All release packages provided as part of a GitHub release are signed. To verify the provided packages, download the key and import it using gpg:
gpg --import node-driver.asc
The GitHub release contains a detached signature file for the NPM package (named
mongodb-js-zstd-X.Y.Z.tgz.sig).
The following command returns the link npm package.
npm view @mongodb-js/zstd@vX.Y.Z dist.tarball
Using the result of the above command, a curl command can return the official npm package for the release.
To verify the integrity of the downloaded package, run the following command:
gpg --verify mongodb-js-zstd-X.Y.Z.tgz.sig mongodb-js-zstd-X.Y.Z.tgz
[!Note] No GPG verification is done when using npm to install the package. The contents of the GitHub tarball and npm's tarball are identical.
To verify the native .node packages, follow the same steps as above using mongodb-js-zstd-X.Y.Z-platform.tgz and the corresponding .sig file.
Releases published to the npm registry also include a provenance attestation, which cryptographically links the package to its source repository and build workflow. To verify provenance:
npm audit signatures
Only the following version combinations with the MongoDB Node.js Driver are considered stable.
@mongodb-js/zstd@1.x | @mongodb-js/zstd@2.x | @mongodb-js/zstd@7.x | |
|---|---|---|---|
mongodb@7.x | N/A | N/A | ✓ |
mongodb@>=6.12 | ^1.1.0 | ✓ | N/A |
mongodb@<6.12 | ^1.1.0 | N/A | N/A |
mongodb@5.x | ✓ | N/A | N/A |
mongodb@4.x | ✓ | N/A | N/A |
mongodb@3.x | N/A | N/A | N/A |
[!Note]
@mongodb-js/zstd@1.xis deprecated - please use@mongodb-js/zstd@2.xinstead.
Below are the platforms that are available as prebuilds on each github release.
prebuild-install downloads these automatically depending on the platform you are running npm install on.
export function compress(buffer: Buffer | ArrayBuffer | Uint8Array, level: number): Promise<Buffer>;
export function decompress(buffer: Buffer): Promise<Buffer>;
This repository uses agentskills.io conventions for AI coding agent
instructions. AGENTS.md is the canonical source of truth — tool-specific files like CLAUDE.md
are generated references.
AGENTS.md in the target directory.git add the file.scripts/symlink-claude-md.sh to generate the companion CLAUDE.md.
scripts/symlink-claude-md.sh is vendored from an internal repo and should not be edited directly.Think you’ve found a bug? Want to see a new feature in @mongodb-js/zstd? Please open a
case in our issue management tool, JIRA:
For issues with, questions about, or feedback for the library, please look into our support channels. Please do not email any of the driver developers directly with issues or questions - you're more likely to get an answer on the MongoDB Community Forums.
Change history can be found in HISTORY.md.
import { compress, decompress } from '@mongodb-js/zstd';
(async () => {
const buffer = Buffer.from('test');
const compressed = await compress(buffer, 10);
const decompressed = await decompress(compressed);
})();
First, install and build the zstd library:
npm run install-zstd
Then build the bindings:
npm run prebuild
Then test:
npm test
JavaScript
43.8%
C++
26.9%
Shell
22.9%
Python
6.4%