open-index/open-npm huggingface dataset:
npm package: @node-redis/json
Description: This package provides support for the [RedisJSON](https://redisjson.io) module, which adds JSON as a native data type to Redis.  It extends the [Node Redis client](https://github.com/redis/node-redis) to include functions for each of the RedisJSON command
Latest version: 1.0.2

# @node-redis/json

This package provides support for the [RedisJSON](https://redisjson.io) module, which adds JSON as a native data type to Redis.  It extends the [Node Redis client](https://github.com/redis/node-redis) to include functions for each of the RedisJSON commands.

To use these extra commands, your Redis server must have the RedisJSON module installed.

## Usage

For a complete example, see [`managing-json.js`](https://github.com/redis/node-redis/blob/master/examples/managing-json.js) in the Node Redis examples folder.

### Storing JSON Documents in Redis

The [`JSON.SET`](https://oss.redis.com/redisjson/commands/#jsonset) command stores a JSON value at a given JSON Path in a Redis key.

Here, we'll store a JSON document in the root of the Redis key "`mydoc`":

```javascript
import { createClient } from 'redis';

...
await client.json.set('noderedis:jsondata', '$', {
  name: 'Roberta McDonald',
  pets: [
    {
    name: 'Rex',
    species: 'dog',
    age: 3,
    isMammal: true
    },
    {
    name: 'Goldie',
    species: 'fish',
    age: 2,
    isMammal: false
    }
  ]
});
```

For more information about RedisJSON's path syntax, [check out the documentation](https://oss.redis.com/redisjson/path/).

### Retrieving JSON Documents from Redis

With RedisJSON, we can retrieve all or part(s) of a JSON document using the [`JSON.GET`]() command and one or more JSON Paths.  Let's get the name and age of one of the pets:

```javascript
const results = await client.json.get('noderedis:jsondata', {
  path: [
    '.pets[1].name',
    '.pets[1].age'
  ]
});
```

`results` will contain the following:

```javascript
 { '.pets[1].name': 'Goldie', '.pets[1].age': 2 }
```

### Performing Atomic Updates on JSON Documents Stored in Redis

RedisJSON includes commands that can atomically update values in a JSON document, in place in Redis without having to first retrieve the entire document.

Using the [`JSON.NUMINCRBY`](https://oss.redis.com/redisjson/commands/#jsonnumincrby) command, we can update the age of one of the pets like this:

```javascript
await client.json.numIncrBy('noderedis:jsondata', '.pets[1].age', 1);
```

And we can add a new object to the pets array with the [`JSON.ARRAPPEND`](https://oss.redis.com/redisjson/commands/#jsonarrappend) command:

```javascript
 await client.json.arrAppend('noderedis:jsondata', '.pets', {
    name: 'Robin',
    species: 'bird',
    age: 1,
    isMammal: false
  });
```
npm package: @node-redis/time-series
Description: This package provides support for the [RedisTimeSeries](https://redistimeseries.io) module, which adds a time series data structure to Redis. It extends the [Node Redis client](https://github.com/redis/node-redis) to include functions for each of the Redi
Latest version: 1.0.2

# @node-redis/time-series

This package provides support for the [RedisTimeSeries](https://redistimeseries.io) module, which adds a time series data structure to Redis. It extends the [Node Redis client](https://github.com/redis/node-redis) to include functions for each of the RedisTimeSeries commands.

To use these extra commands, your Redis server must have the RedisTimeSeries module installed.

For an example of how to add values to a time series, query a time series, and perform aggregated queries against a time series, see `time-series.js` in the Node Redis examples folder.
npm package: @node-rpi-gpio/ds18b20
Description: Reads data from a DS18B20
Author: smnplicity
Latest version: 0.0.2

# @node-rpi-gpio/ds18b20
A simple event based NodeJS module for reading temperature using a DS18B20 on a Raspberry PI.

## Installation
```
npm i @node-rpi-gpio/ds18b20
```

## Usage
### Subscribe to temperature change events
```
const ds18b20 = new DS18B20({ deviceId: "28-3c46e381ef0a", units: "C", precision: 1 })
  .on("error", (err: string | Error) => {
    // Log or display an error.
  })
  .on("change", (changedValue: number) => {
    
  })
  .connect();
```
npm package: @node-rpi-gpio/ina226
Description: Reads data from an INA226
Author: smnplicity
Latest version: 0.0.2

# @node-rpi-gpio/ina226

A simple event based NodeJS module for reading current and power from an INA226.

## Installation

```
npm i @node-rpi-gpio/ina226
```

## Usage
### Options
address: The I2C address that is connected to the INA226.

rShunt: The shunt resistance value.

### Subscribe to data change events

```
import INA226, {
  Ina226ConnectInfo,
  Ina226DataChange,
} from "@node-rpi-gpio/ina226";

const ina226 = new INA226({ address: 0x40, rShunt: 0.1 })
  .on("connect", connectInfo: Ina226ConnectInfo => {
    console.log("Connected", connectInfo);
  })
  .on("error", (err: string | Error) => {
    // Log or display an error.
  })
  .on("change", (data: Ina226DataChange) => {
    console.log(data.power, "W");
    console.log(data.current, "A");
  })
  .connectAsync();
```
npm package: @node-rs/argon2-linux-arm-gnueabihf
Description: RustCrypto: Argon2 binding for Node.js
Latest version: 2.0.2

# `@node-rs/argon2-linux-arm-gnueabihf`

This is the **armv7-unknown-linux-gnueabihf** binary for `@node-rs/argon2`
npm package: @node-rs/crc32-linux-arm-gnueabihf
Description: SIMD crc32
Author: LongYinan
Latest version: 1.10.6

# `@node-rs/crc32-linux-arm-gnueabihf`

This is the **armv7-unknown-linux-gnueabihf** binary for `@node-rs/crc32`
npm package: @node-rs/deno-lint-linux-arm-gnueabihf
Description: Deno lint binding for Node.js
Author: LongYinan
Latest version: 1.20.4

# `@node-rs/deno-lint-linux-arm-gnueabihf`

This is the **armv7-unknown-linux-gnueabihf** binary for `@node-rs/deno-lint`
npm package: @node-rs/deno-lint-linux-x64-musl
Description: Deno lint binding for Node.js
Author: LongYinan
Latest version: 1.20.4

# `@node-rs/deno-lint-linux-x64-musl`

This is the **x86_64-unknown-linux-musl** binary for `@node-rs/deno-lint`
npm package: @node-rs/deno-lint-win32-arm64-msvc
Description: Deno lint binding for Node.js
Author: LongYinan
Latest version: 1.20.4

# `@node-rs/deno-lint-win32-arm64-msvc`

This is the **aarch64-pc-windows-msvc** binary for `@node-rs/deno-lint`
npm package: @node-rs/deno-lint-win32-ia32-msvc
Description: Deno lint binding for Node.js
Author: LongYinan
Latest version: 1.20.4

# `@node-rs/deno-lint-win32-ia32-msvc`

This is the **i686-pc-windows-msvc** binary for `@node-rs/deno-lint`
npm package: @node-rs/deno-lint-win32-x64-msvc
Description: Deno lint binding for Node.js
Author: LongYinan
Latest version: 1.20.4

# `@node-rs/deno-lint-win32-x64-msvc`

This is the **x86_64-pc-windows-msvc** binary for `@node-rs/deno-lint`
npm package: @node-rs/helper
Description: Helper library for node-rs
Author: LongYinan
Latest version: 1.6.0

# `@node-rs/helper`

[![install size](https://packagephobia.com/badge?p=@node-rs/helper)](https://packagephobia.com/result?p=@node-rs/helper)
[![Downloads](https://img.shields.io/npm/dm/@node-rs/helper.svg?sanitize=true)](https://npmcharts.com/compare/@node-rs/helper?minimal=true)

> Helper library for load native package.

## Usage

### locateBinding

Load native binding file from `dirname`

```ts
loadBinding(dirname: string, filename?: string = 'index', packageName?: string): string
```

- `dirname`, dirname which the **.node** binding file located
- `filename`, the `napi.name` filed in you `package.json`
- `packageName`, the `name` filed in your `package.json`, `@swc/core` for example.

- return native module

```ts
const { loadBinding } = require('@node-rs/helper')

module.exports = loadBinding(__dirname, 'swc', '@swc/core')
```
npm package: @node-rs/jieba-linux-arm-gnueabihf
Description: Fastest Chinese word segmentation in Node.js
Author: LongYinan
Latest version: 2.0.1

# `@node-rs/jieba-linux-arm-gnueabihf`

This is the **armv7-unknown-linux-gnueabihf** binary for `@node-rs/jieba`
npm package: @node-rs/jsonschema-linux-arm-gnueabihf
Description: A node package based on jsonschema-rs for performing JSON schema validation
Latest version: 0.1.2

# `@node-rs/jsonschema-linux-arm-gnueabihf`

This is the **armv7-unknown-linux-gnueabihf** binary for `@node-rs/jsonschema`
npm package: @node-rs/jsonwebtoken-linux-arm-gnueabihf
Description: Rust jsonwebtoken binding for Node.js
Author: Francesco Benedetto
Latest version: 0.5.9

# `@node-rs/jsonwebtoken-linux-arm-gnueabihf`

This is the **armv7-unknown-linux-gnueabihf** binary for `@node-rs/jsonwebtoken`
npm package: @node-rs/xxhash-linux-arm-gnueabihf
Description: Fastest xxhash implementation in Node.js
Author: LongYinan
Latest version: 1.7.6

# `@node-rs/xxhash-linux-arm-gnueabihf`

This is the **armv7-unknown-linux-gnueabihf** binary for `@node-rs/xxhash`
npm package: @node-rs/xxhash-win32-x64-msvc
Description: Fastest xxhash implementation in Node.js
Author: LongYinan
Latest version: 1.7.6

# `@node-rs/xxhash-win32-x64-msvc`

This is the **x86_64-pc-windows-msvc** binary for `@node-rs/xxhash`
npm package: @node-rust/random-fill-sync-android-arm-eabi
Description: This is the **armv7-linux-androideabi** binary for `@node-rust/random-fill-sync`
Latest version: 0.0.2

# `@node-rust/random-fill-sync-android-arm-eabi`

This is the **armv7-linux-androideabi** binary for `@node-rust/random-fill-sync`
npm package: @node-rust/random-fill-sync-android-arm64
Description: This is the **aarch64-linux-android** binary for `@node-rust/random-fill-sync`
Latest version: 0.0.2

# `@node-rust/random-fill-sync-android-arm64`

This is the **aarch64-linux-android** binary for `@node-rust/random-fill-sync`
npm package: @node-rust/random-fill-sync-darwin-arm64
Description: This is the **aarch64-apple-darwin** binary for `@node-rust/random-fill-sync`
Latest version: 0.0.2

# `@node-rust/random-fill-sync-darwin-arm64`

This is the **aarch64-apple-darwin** binary for `@node-rust/random-fill-sync`
npm package: @node-rust/random-fill-sync-darwin-x64
Description: This is the **x86_64-apple-darwin** binary for `@node-rust/random-fill-sync`
Latest version: 0.0.2

# `@node-rust/random-fill-sync-darwin-x64`

This is the **x86_64-apple-darwin** binary for `@node-rust/random-fill-sync`
npm package: @node-rust/random-fill-sync-linux-arm-gnueabihf
Description: This is the **armv7-unknown-linux-gnueabihf** binary for `@node-rust/random-fill-sync`
Latest version: 0.0.2

# `@node-rust/random-fill-sync-linux-arm-gnueabihf`

This is the **armv7-unknown-linux-gnueabihf** binary for `@node-rust/random-fill-sync`
npm package: @node-rust/random-fill-sync-linux-arm-musleabihf
Description: This is the **armv7-unknown-linux-musleabihf** binary for `@node-rust/random-fill-sync`
Latest version: 0.0.2

# `@node-rust/random-fill-sync-linux-arm-musleabihf`

This is the **armv7-unknown-linux-musleabihf** binary for `@node-rust/random-fill-sync`
npm package: @node-rust/random-fill-sync-linux-arm64-gnu
Description: This is the **aarch64-unknown-linux-gnu** binary for `@node-rust/random-fill-sync`
Latest version: 0.0.2

# `@node-rust/random-fill-sync-linux-arm64-gnu`

This is the **aarch64-unknown-linux-gnu** binary for `@node-rust/random-fill-sync`
npm package: @node-rust/random-fill-sync-linux-arm64-musl
Description: This is the **aarch64-unknown-linux-musl** binary for `@node-rust/random-fill-sync`
Latest version: 0.0.2

# `@node-rust/random-fill-sync-linux-arm64-musl`

This is the **aarch64-unknown-linux-musl** binary for `@node-rust/random-fill-sync`
npm package: @node-rust/random-fill-sync-linux-riscv64-gnu
Description: This is the **riscv64gc-unknown-linux-gnu** binary for `@node-rust/random-fill-sync`
Latest version: 0.0.2

# `@node-rust/random-fill-sync-linux-riscv64-gnu`

This is the **riscv64gc-unknown-linux-gnu** binary for `@node-rust/random-fill-sync`
npm package: @node-rust/random-fill-sync-linux-x64-gnu
Description: This is the **x86_64-unknown-linux-gnu** binary for `@node-rust/random-fill-sync`
Latest version: 0.0.2

# `@node-rust/random-fill-sync-linux-x64-gnu`

This is the **x86_64-unknown-linux-gnu** binary for `@node-rust/random-fill-sync`
npm package: @node-rust/random-fill-sync-linux-x64-musl
Description: This is the **x86_64-unknown-linux-musl** binary for `@node-rust/random-fill-sync`
Latest version: 0.0.2

# `@node-rust/random-fill-sync-linux-x64-musl`

This is the **x86_64-unknown-linux-musl** binary for `@node-rust/random-fill-sync`
npm package: @node-rust/random-fill-sync-win32-arm64-msvc
Description: This is the **aarch64-pc-windows-msvc** binary for `@node-rust/random-fill-sync`
Latest version: 0.0.2

# `@node-rust/random-fill-sync-win32-arm64-msvc`

This is the **aarch64-pc-windows-msvc** binary for `@node-rust/random-fill-sync`
npm package: @node-rust/random-fill-sync-win32-x64-msvc
Description: This is the **x86_64-pc-windows-msvc** binary for `@node-rust/random-fill-sync`
Latest version: 0.0.2

# `@node-rust/random-fill-sync-win32-x64-msvc`

This is the **x86_64-pc-windows-msvc** binary for `@node-rust/random-fill-sync`