# @node-rs/crc32

> SIMD crc32

Latest version **1.10.8** (published 2026-09-10) · MIT license · 0 weekly downloads

## Install

```sh
npm install @node-rs/crc32
pnpm add @node-rs/crc32
yarn add @node-rs/crc32
bun add @node-rs/crc32
```

## Health

**Score 65/100 (B)** — status: active.

Positive: has types; no vulnerabilities; has provenance; recently updated; high maintenance score.

Warnings: low downloads; no esm support.

## Facts

| | |
|---|---|
| Version | 1.10.8 |
| Published | 2026-09-10 |
| First published | 2020-04-30 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Node | >= 10 |
| Dependencies | 0 |
| Unpacked size | 34.7 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Provenance | attested (GitHub Actions) |
| GitHub stars | 1469 |
| Author | LongYinan |
| Maintainers | broooooklyn |
| Keywords | NAPI, SIMD, crc32, crc32c, napi-rs, node-rs |

## Links

- npm: https://www.npmjs.com/package/@node-rs/crc32
- Repository: https://github.com/napi-rs/node-rs
- Issues: https://github.com/napi-rs/node-rs/issues
- Funding: https://github.com/sponsors/Brooooooklyn
- npm.io page: https://npm.io/package/@node-rs/crc32

## Alternatives

- [@mdxeditor/editor](https://npm.io/package/@mdxeditor/editor.md) — 962.4K weekly downloads
- [mmdb-lib](https://npm.io/package/mmdb-lib.md) — 680.9K weekly downloads
- [playcanvas](https://npm.io/package/playcanvas.md) — 36.2K weekly downloads
- [@glw907/cairn-cms](https://npm.io/package/@glw907/cairn-cms.md) — 967 weekly downloads
- [markdown-to-confluence](https://npm.io/package/markdown-to-confluence.md) — 103 weekly downloads

## Recent versions

- 1.10.8 (latest) — 2026-09-10
- 1.4.1 (deprecated) — 2022-01-13
- 1.10.7 — 2026-08-13
- 1.10.6 — 2024-12-05
- 1.10.4 — 2024-10-05
- 1.10.3 — 2024-04-23
- 1.10.2 — 2024-04-23
- 1.10.1 — 2024-04-21
- 1.10.0 — 2024-02-29
- 1.9.2 — 2024-01-17
- 1.9.1 — 2024-01-10
- 1.9.0 — 2024-01-09
- 1.8.1 — 2024-01-03
- 1.8.0 — 2024-01-02
- 1.7.2 — 2023-07-20
- … 33 more at https://npm.io/package/@node-rs/crc32/versions

## README

# `@node-rs/crc32`

![](https://github.com/napi-rs/node-rs/workflows/CI/badge.svg)
![](https://img.shields.io/npm/dm/@node-rs/crc32.svg?sanitize=true)

Fastest `crc32` implement in `Node.js`

The 4 tested implementations are:

- **@node-rs/crc32** Hardware accelerated CRC-32C from [crc32fast](https://crates.io/crates/crc32fast)
- **sse4_crc32c** Hardware accelerated CRC-32C from [sse4_crc32](https://github.com/Voxer/sse4_crc32)
- **js_crc32c** Javascript implemented CRC-32C
- **js_crc32** Javascript implemented CRC-32 from [buffer-crc32](https://github.com/brianloveswords/buffer-crc32)

## Performance

```bash
@node-rs/crc32 for inputs 1024B x 5,108,123 ops/sec ±1.86% (89 runs sampled)
@node-rs/crc32 for inputs 16931844B, avg 2066B x 271 ops/sec ±1.15% (85 runs sampled)
sse4_crc32c_hw for inputs 1024B x 3,543,443 ops/sec ±1.39% (93 runs sampled)
sse4_crc32c_hw for inputs 16931844B, avg 2066B x 209 ops/sec ±0.78% (76 runs sampled)
sse4_crc32c_sw for inputs 1024B x 1,460,284 ops/sec ±2.35% (90 runs sampled)
sse4_crc32c_sw for inputs 16931844B, avg 2066B x 93.50 ops/sec ±2.43% (69 runs sampled)
js_crc32c for inputs 1024B x 464,681 ops/sec ±0.46% (91 runs sampled)
js_crc32c for inputs 16931844B, avg 2066B x 28.25 ops/sec ±1.64% (51 runs sampled)
js_crc32 for inputs 1024B x 442,272 ops/sec ±2.66% (93 runs sampled)
js_crc32 for inputs 16931844B, avg 2066B x 22.12 ops/sec ±5.20% (40 runs sampled)
+---------------------+-------------------+----------------------+
|                     │ 1024B             │ 16931844B, avg 2066B |
+---------------------+-------------------+----------------------+
| @node-rs/crc32      │ 5,108,123 ops/sec │ 271 ops/sec          |
+---------------------+-------------------+----------------------+
| sse4_crc32c_hw      │ 3,543,443 ops/sec │ 209 ops/sec          |
+---------------------+-------------------+----------------------+
| sse4_crc32c_sw      │ 1,460,284 ops/sec │ 93.50 ops/sec        |
+---------------------+-------------------+----------------------+
| js_crc32c           │ 464,681 ops/sec   │ 28.25 ops/sec        |
+---------------------+-------------------+----------------------+
| js_crc32            │ 442,272 ops/sec   │ 22.12 ops/sec        |
+---------------------+-------------------+----------------------+
```

## API

> The type of **input initial crc** and **output crc number** is `u32`

```ts
export function crc32(input: Buffer, crc?: number): number
export function crc32c(input: Buffer, crc?: number): number
```

## Usage

```ts
const { crc32 } = require('@node-rs/crc32')
const { readFileSync } = require('fs')

const content = readFileSync('./avatar.png')

crc32(content)
```

---
_Source: https://npm.io/package/@node-rs/crc32 · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
