open-index/open-npm huggingface dataset:
npm package: @kronoslive/crc16
Description: Native node addon to calculate CRC16 values.
Author: Mike Diarmid
Latest version: 1.0.1

# CRC16 

![Downloads](https://img.shields.io/npm/dt/crc16.svg)
![npm version](https://img.shields.io/npm/v/crc16.svg)
![node version](https://img.shields.io/node/v/crc16.svg)
![dependencies](https://img.shields.io/david/salakar/crc16.svg)
![dev dependencies](https://img.shields.io/david/dev/salakar/crc16.svg)
<a href="https://twitter.com/mikediarmid"><img src="https://img.shields.io/twitter/follow/mikediarmid.svg?style=social&label=Follow" alt="Follow on Twitter"></a>

Native node addon to calculate CRC16 values.

## Installation

```
npm i crc16 --save
```

## NOTE
If your intention is to use this to calculate redis slots then please use https://github.com/Salakar/cluster-key-slot - it's a pure JS implementation I wrote that is much faster than doing it natively.

## Usage

##### `CRC16(stringOrBuffer, [optional] encoding)`

 - **stringOrBuffer**: String or a buffer. If a string is provided it will automatically be converted to a buffer.
 - **encoding**: Used for string to buffer conversion - only when a string is provided in `stringOrBuffer`

```javascript
var CRC16 = require('crc16');
console.log(CRC16('some_value'));
console.log(CRC16('0d0103588990501766460026', 'hex'));

// calculate a redis hash slot
console.log(CRC16('key') & 16383);
```

## License
APACHE-2.0